我一直在使用ASP.NET MVC一段时间,似乎发现自己不断从我的控制器返回ActionResult以外的东西.我显然返回了ViewResults,还有JSonResults以及我们内部构建的一些自定义结果.
我想知道,如果,而不是声明我的控制器方法,如:
public ActionResult Index()
Run Code Online (Sandbox Code Playgroud)
我应该开始宣布它们为
public ViewResult Index()
Run Code Online (Sandbox Code Playgroud)
要么
public JsonResult Search()
Run Code Online (Sandbox Code Playgroud)
如果我总是知道我的控制器上的索引操作将始终返回ViewResult,或者我的控制器上的搜索操作将始终返回JsonResult?
编辑:只是为了澄清,我正在具体谈论我总是希望返回特定类型的ActionResult的情况.
我投赞成票有两个原因.
您明确声明了您希望该方法返回的内容,编译器将捕获任何其他尝试.不需要进行Assert的单元测试(结果是ViewResult).
在检查该结果类型的唯一属性时,必须将结果转换为测试中的预期类型(例如,检查RedirectResult的Url属性).简单地声明测试变量可以var消除因更改类型而导致的任何脆弱性.
| 归档时间: |
|
| 查看次数: |
420 次 |
| 最近记录: |