You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将数据库存储的转义HTML字符串还原为浏览器可识别的HTML标签

我来给你搞定这个问题!你现在遇到的情况是:数据库里存的是转义后的HTML内容(比如像<ul>、<li>这种转义标签),直接用@Model.Artikel输出的话,浏览器会把这些转义字符当成纯文本显示,而不是渲染成真正的列表。

解决方法很简单,在ASP.NET MVC里,你只需要用@Html.Raw()方法来输出内容,它会跳过默认的HTML编码,让浏览器直接解析HTML标签。

修改后的代码示例:

// index.cshtml 
@model ArtikelsViewModels 
@if (Model.Id == 1003) { 
    <h1>Common myths about DI</h1> 
    <p> @Html.Raw(Model.Artikel) </p> 
} 

为什么这样管用?

默认情况下,ASP.NET MVC的@语法会自动对输出的字符串进行HTML编码,这是为了防止XSS攻击。但如果你的内容是自己后台安全存入的(比如不是用户提交的未过滤内容),用Html.Raw()就能告诉框架:“这个内容是安全的HTML,直接输出就行”,这样浏览器就能识别并渲染数据库里的列表标签了。

⚠️ 重要提醒:如果文章内容来自用户输入,一定要先做安全过滤再使用Html.Raw(),不然可能会存在XSS攻击的风险!

内容的提问来源于stack exchange,提问作者Hasan Othman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:08:09