ASP.NET MVC:控制器方法成为行动的标准?

Igo*_*ejc 0 asp.net-mvc

我正在编写一些单元测试来声明我们所有的控制器操作方法都标有适当的自定义属性,但我真的不知道用于确定公共方法是否可以充当MVC操作的标准.

我认为标准可以是返回值类型(它必须是ActionResult或衍生的).这是真的?静态方法怎么样?

Sau*_*tka 5

对于要被视为操作的方法,它必须满足以下条件:

  • 必须是,public而不是static
  • 它不能具有"特殊"名称以排除构造函数,事件等.
  • 不得在System.Web.Mvc.Controller任何其他基类上定义它以排除.ToString()和族.

通用方法会引发异常,但由于某种原因,他们会are考虑操作.至于返回类型,它不一定必须是ActionResult,因为你可以返回例如string文本数据.