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 中设置,则会在编译时提供错误。