e 如果通过使用控制器中的操作方法不可用,是否有任何方法可以产生编译时错误Html.Action
?
例如,假设我们有一个名为LayoutMainPartialViewsController
的控制器,并且在这样的控制器中,我们有一个Header
输出位于的 Header Partial View的方法/Views/Shared/PartialViews/_Header.cshtml
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
需要转换为 String 的方法,方法相同Html.Action
。
这样,如果我们更改Header
为Header2
并<MvcBuildViews>true</MvcBuildViews>
在 csproj 中设置,则会在编译时提供错误。