我的ASP.NET MVC应用程序中有一个自定义的Error.aspx页面。错误页面使用母版页(后者又使用另一个母版页),在母版页中调用HtmlHelper:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Unsecure.Master" ... %>
...
Html.RenderPartial("LogOnUserControl")
我的web.config设置为使用此错误页面来处理所有错误:
<customErrors mode="RemoteOnly" defaultRedirect="/Views/Shared/Error.aspx" />
麻烦的是ViewMasterPage的Html属性为null。我的理解是,这个属性只是从ViewPage的Html属性中提取的,该属性也是null。因此,任何针对HtmlHelper调用部分方法的尝试都会因NullReferenceException而失败。
为什么HtmlHelper为空?
答案 0 :(得分:0)
您的MasterPage Page Directive是否如下所示:
<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
没有Inherits属性Html。*不存在。