【问题标题】:Html.Raw is nullHtml.Raw 为空
【发布时间】:2013-04-03 13:17:22
【问题描述】:

我在这里遇到了麻烦。在我看来,我有以下代码:

@if (!string.IsNullOrEmpty(alert)) { 
    <div class="alert">@Html.Raw(alert)</div>
}

但是会抛出 NullReferenceException 类型的异常,说明 Html 属性为空。我该如何解决这个问题?

OBS:我的视图页面继承自一个类,而该类又继承自 System.Web.WebPages.WebPage

// 网络配置

<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"/>

【问题讨论】:

  • 如果你使用@Html.Raw(alert)会遇到同样的问题
  • 您使用的是什么版本的 MVC?在 MVC 3 中添加了 Raw 方法。
  • @Kane 是的,我也收到错误消息!
  • @Guffa 我已经用网络配置的组装部分更新了帖子。对吗?
  • 主 web.config 中的程序集引用和 Views 文件夹中的 web.config 是否不同?

标签: asp.net razor


【解决方案1】:

我没有得到解决方案,所以我将代码更改为:

@if (!string.IsNullOrEmpty(alert)) {    
    <div class="alert">@(new HtmlString(alert))</div>
}

Razor 不编码 HtmlString。所以效果很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-02
    • 1970-01-01
    • 1970-01-01
    • 2022-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多