2013-03-21 65 views
35

在我的主頁,我的代碼@{Html.RenderPartial("_Partial1.cshtml");},並在我的部分,我有一個HTML字符串:如何在ASP.NET MVC中呈現HTML字符串?

@{ 
    // The string is actually dynamic, not static. This is here for simplicity 
    string abc="<div class=\"error\">abc</div>"; 
} 
@abc 

我想一些CSS錯誤樣式輸出abc,但事實上,我<div class="error">abc</div> - 當然,那裏沒有風格。我如何將它解釋爲HTML源代碼而不是字符串?

+1

http://stackoverflow.com/questions/4281424/asp-net-mvc-razor-output-html-string-non-escaped – adt 2013-03-21 13:26:13

+0

'

abc
'有什麼問題? – alex 2016-02-11 20:00:25

回答

92

您可以使用Html.Raw()方法。

+5

這真是太神奇了。提示,如果你有一個.html文件,而不是使用:@ Html.Raw(File.ReadAllText(Server.MapPath())) – cgatian 2013-11-19 02:39:57

+0

這是一個危險的答案。看到https://en.wikipedia.org/wiki/Cross-site_scripting – Unw0und 2015-06-14 03:25:22

+0

說我要在剃刀中定義一個全局變量,然後使用@ html.Raw(在這個變量上,因爲我想定義它的一些標記和呈現有沒有辦法有人可以從url設置一個Razor變量的值?我只是想確保這不容易通過URL注入XSS ..謝謝! – eaglei22 2015-12-14 19:34:10

相關問題