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))