将html标记作为字符串插入数据库并将其检索回并显示html

时间:2013-07-16 06:41:40

标签: c# sql html5 asp.net-mvc-4

我想将html标签作为字符串插入数据库并将其检索回来。检索后,我想显示html标签的相应输出

作为例如:string table =“

  <table class="restbl">
    <tbody>
        <tr><th class="date">Date</th><th>Event</th><th>Host/City</th><th class="ven">Venue</th></tr>
        <tr><td class="date">Sun 11-Aug-2013</td><td>New Member Orientation Seminar</td><td >Koothattukulam</td><td class="ven"></td></tr>

   </tbody>
</table>"

怎么可能。重新检查后没有显示相应的表格。

2 个答案:

答案 0 :(得分:0)

假设您有一个视图模型,并在Text属性中检索了数据库中的HTML值:

public class MyViewModel
{
    public string Text { get; set; }
}

现在在您的视图中,您可以使用@Html.Raw帮助程序来避免输出自动进行HTML编码:

@model MyViewModel
@Html.Raw(Model.Text)

毋庸置疑,如果您在输出之前没有清理用户输入,那么您将打开您的站点以进行XSS攻击。例如,您可以使用AntiXSS库。

答案 1 :(得分:0)

您可以使用此代码

using System.Net;

string a = WebUtility.HtmlEncode("<html><head><title>T</title></head></html>");
string b = WebUtility.HtmlDecode(a);