Asp.net MVC在Razor中输出Html的两种方式

http://qubernet.blog.163.com/blog/static/177947284201485104616368/

Razor中所有的Html都会自动编码,这样就不需要我们手动去编码了(安全),但在需要输出Html时就是已经转义过的Html文本了,如下所示:

@{

    string thisTest = "<span style=\"color:#f00;\">qubernet</span>";

}

@thisTest;

 

这样在页面输出的文本就是:<span style=\"color:#f00;\">qubernet</span>而不是红色的字体了,要输出红色的字体,有下面常用的两种方式:

 

1. 使用Razor中的Html.Raw(推荐使用这种方式):
@{
    string thisTest = "<span style=\"color:#f00;\">qubernet</span>";
}
@Html.Raw(thisTest);

 

2. 使用MvcHtmlString类来实现:
@{
    string thisTest = "<span style=\"color:#f00;\">qubernet</span>";
    var thisResult = new MvcHtmlString(thisTest);
}
@thisResult或@(new HtmlString(thisTest))

posted @ 2017-11-22 13:41  LuoCore  阅读(8430)  评论(0编辑  收藏  举报