我正在寫一個輔助方法,將產生一個網頁上評論的HTML,我希望能夠以顯示與評論「< SCRIPT>警報(」你好「); </script>」,因爲它的內容。ASP.NET MVC 4的HtmlHelper - 混合解碼HTML編碼用HTML
當使用
@HttpUtility.HtmlDecode(comment.Content)
在* .cshtml文件
,該腳本被渲染成純文本。
但在查看使用此HTML幫助時:
@Html.PendingComment(comment)
腳本被渲染爲HTML和被執行:
public static IHtmlString PendingComment(this HtmlHelper helper, VoidCommentPending comment)
{
var sb = new StringBuilder();
sb.Append("<p>" + HttpUtility.HtmlDecode(comment.Content) + "</p>");
return MvcHtmlString.Create(sb.ToString());
}
試圖與 「新HtmlString()」,同樣的結果,當我將IHtmlString的返回結果更改爲字符串時,即使段落標籤也被呈現爲純文本。
是否有可能在的HtmlHelper混合編碼和解碼HTML字符串或者我應該使用不同的方法?