有什么方法可以让强类型视图出现编译时错误。假设我在文件夹中有一个视图,其中/Views/Home/Index.cshtml
包含以下代码和强类型模型:
@model CSTemplate.Models.Home.HomeIndexModel
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
然后位于的控制器/Controllers/HomeController.cs
将返回以下代码。
public class HomeController : Controller
{
//
// GET: /Home/
public ActionResult Index()
{
List<string> s = new List<string>();
return View(s);
}
}
如您所见,由于 View() 接受对象作为模型,编译器不会抱怨模型无效,而是会输出运行时错误,即:
Server Error in '/' Application.
The model item passed into the dictionary is of type 'System.Collections.Generic.List`1[System.String]', but this dictionary requires a model item of type 'CSTemplate.Models.Home.HomeIndexModel'.
在这种模型类型不匹配的情况下,有什么方法可以让我得到编译时错误而不是运行时错误,或者有什么解决方法吗?