我的数据库中有一个表,其中一个属性是一个Html页面(没有html,head和body标签),我打算把它放在我的一个视图的中间 - 比方说,我称之为cotroller方法接受一个参数,并返回一个传递这个html大字符串作为模型的视图.我搜索了它(不多,我承认),并找到了以下方法:
<%= System.Web.HttpUtility.HtmlDecode(yourEncodedHtmlFromYouDatabase) %>
Run Code Online (Sandbox Code Playgroud)
这是在stackoverflow中找到的.当我尝试类似的剃须刀时,我最终得到了这个:
@System.Web.HttpUtility.HtmlDecode("<h1>Test</h1>")
Run Code Online (Sandbox Code Playgroud)
这是个主意,但它并没有像我计划的那样有效.
我有一个返回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,并且任何脚本实际运行?