【问题标题】:Encode String To Html Asp.Net MVC [duplicate]将字符串编码为 Html Asp.Net MVC [重复]
【发布时间】:2012-07-13 09:04:21
【问题描述】:

可能重复:
ASP.NET MVC Razor render without encoding

我的 Product 对象的一个​​特性是返回一个包含 html 的字符串。当我将模型设置为视图时,视图会将其读取为文本而不是 html。如何让视图知道将属性读取为 html?

<td colspan="2">
 <div>
   <label >                             
       @Model.LongDescription  
   </label>                                 
 </div>
</td>

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    Razor 默认对所有内容进行编码,您只需使用 @Html.Raw 即可看到此 question 这与您遇到的问题几乎相同

    <td colspan="2">
     <div>
       <label >                             
           Html.Raw(@Model.LongDescription)
       </label>                                 
     </div>
    </td>
    

    【讨论】:

      【解决方案2】:

      使用Html.Raw帮助方法忽略编码

      <label >                             
         @Html.Raw(Model.LongDescription)  
      </label>  
      

      【讨论】:

        【解决方案3】:

        您需要使用 HtmlString 对象。我更喜欢在我的模型中通过向模型添加属性来处理这个问题:

        public HtmlString LongDescription
        {
            get
            {
                return new HtmlString(LongDescription);
            }
        }
        

        对象 HtmlString 将保留 html 格式以供显示。

        【讨论】:

          猜你喜欢
          • 2018-03-27
          • 1970-01-01
          • 1970-01-01
          • 2015-01-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-02-25
          • 1970-01-01
          相关资源
          最近更新 更多