e如果通过使用
Html.Action控制器中没有操作方法,有没有办法可以产生编译时错误?
例如,假设我们有一个名为LayoutMainPartialViewsController的控制器,在这样的控制器中,我们有一个方法Header,它输出位于/Views/Shared/PartialViews/_Header.cshtml的Header Partial View.
public class LayoutMainPartialViewsController : Controller
{
//
// GET: /LayoutMainPartialViews/
public ActionResult Header()
{
return PartialView("/Views/Shared/PartialViews/_Header.cshtml");
}
}
然后包括这样的局部视图,我们将在Razor内部调用
@Html.Action("Header", "LayoutMainPartialViews");
如果由于某种原因,名为Header的方法被重命名为Header2,则不会给出编译时错误,只会给出运行时错误.
我希望能够编译时错误,以尽可能减少运行时错误,因为它们更难以识别.
换句话说,打电话是否有意义?
@(new LayoutMainPartialViewsController().Header())
上面的方法返回一个ActionResult,它需要像Html.Action一样转换为String.
这样,如果我们将Header更改为Header2并且具有< MvcBuildViews> true< / MvcBuildViews>在csproj中,编译时提供错误.