【问题标题】:ASP.NET MVC4 - display HTML containing string as raw HTMLASP.NET MVC4 - 将包含字符串的 HTML 显示为原始 HTML
【发布时间】:2014-02-28 07:41:34
【问题描述】:

我有一个从数据库读取的字符串,其中包含我要输出的 HTML。尽管应用了HttpUtility.HtmlDecode(),视图总是将字符串呈现为编码的HTML(即<SPAN>而不是<SPAN>)。

我正在使用:

string test = WebUtility.HtmlDecode(myStr);
<span>@test</span>

我试过了:

string test = HttpUtility.HtmlDecode(myStr);
<span>@test</span>

<span>@HttpUtility.HtmlDecode(myStr)</span>

【问题讨论】:

    标签: html asp.net asp.net-mvc asp.net-mvc-4


    【解决方案1】:

    使用Html.Raw()

    @Html.Raw("<span>Hello</span>")
    

    Razor 中助手和其他元素的所有输出都通过HttpUtility.HtmlEncode 传递,除非它们实现IHtmlString。但是你最好的选择是使用Html.Raw()

    【讨论】:

      【解决方案2】:

      你需要使用@Html.Raw:

      @Html.Raw("<h1>Header</h1>")
      

      将输出文本Header

      【讨论】:

        【解决方案3】:

        试试这个辅助方法

        @Html.Raw(myStr)
        

        【讨论】:

          猜你喜欢
          • 2023-04-03
          • 1970-01-01
          • 2017-02-25
          • 2013-11-27
          • 1970-01-01
          • 2016-01-13
          • 1970-01-01
          相关资源
          最近更新 更多