我在这里遇到麻烦了。在我看来,我有以下代码:
@if (!string.IsNullOrEmpty(alert)) { 
    <div class="alert">@Html.Raw(alert)</div>
}
但是抛出了一个类型NullReferenceException异常,说Html属性为null。我该如何解决?
OBS:我的视图页面继承自一个类,而该类又继承自 System.Web.WebPages.WebPage
// WEBCONFIG
<system.web>
<compilation debug="true" targetFramework="4.0">
  <assemblies>
    <add assembly="Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Web.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Web.WebPages.Deployment, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
  </assemblies>
</compilation>
<httpRuntime targetFramework="4.0"/>
我没有解决方案,所以我将代码更改为:
@if (!string.IsNullOrEmpty(alert)) {    
    <div class="alert">@(new HtmlString(alert))</div>
}
Razor不编码HtmlString。因此工作正常。