Dam*_*yer 23 asp.net-mvc html-encode razor
我有一个返回JavaScript和/或HTML片段的函数.
static public string SpeakEvil()
{
return "<script>alert('BLAH!!');</script>";
}
Run Code Online (Sandbox Code Playgroud)
在视图中,正如大多数人所期望的那样,Razor对它进行了非常正确的HTML编码.
@StaticFunctions.SpeakEvil()
Run Code Online (Sandbox Code Playgroud)
我如何使用Razor 而不是 HTML对此进行编码,以便逐字地发出HTML和JavaScript,并且任何脚本实际运行?
mar*_*ind 51
您可以使用该Raw()功能,但它主要用于来自数据库的内容.
对于像你这样的帮手,我会建议你回复IHtmlString:
static public IHtmlString SpeakEvil() {
return new HtmlString("<script>alert('BLAH!!');</script>");
}
Run Code Online (Sandbox Code Playgroud)
这样你就不必Raw()在每个呼叫站点都打电话.
Ode*_*ded 37
使用Html.Raw帮助器.
@Html.Raw(StaticFunctions.SpeakEvil())
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24065 次 |
| 最近记录: |