如何从我的数据库输出html

Ero*_*ocM 0 html c# asp.net-mvc razor

我正在显示我的"新闻"页面,我希望客户能够输出一些简单的HTML.

我的观点如下:

@using SuburbanCustPortal.SuburbanService

    <br />

    @foreach (var item in (IEnumerable<TokenNews>) ViewBag.News)
    {
      <div class="fulldiv">
        <fieldset> 
          <legend>@item.Title</legend>
          <div>
            @item.Body
          </div>    
        </fieldset>
      </div>
    }
Run Code Online (Sandbox Code Playgroud)

当我这样做时,浏览器不会呈现html,它只是将html显示为文本.

我可以输出浏览器渲染它的html的任何方式吗?

Mat*_*nen 6

您没有确切地指定哪个部分显示为文本,但如果是item.Body,则执行此操作@Html.Raw(item.Body).这将一个字符串转换为IHtmlString,其目的是告诉Razor这个东西保证按原样输出是安全的,并且不会包含像XSS攻击这样的恶意(确保在使用Html.Raw时这是你的工作).一切不是IHtmlString的东西都将被Razor自动转义.