2011-06-08 75 views
3

發佈包含html代碼的文本框內容時,我收到有關可能的危險內容的錯誤。我讀了如何配置舊的2.0行爲,但它不適合我,我寧願有一個乾淨的解決方案。我可能不是唯一需要發佈html的人,所以我想知道我找不到解決此問題的解決方案。任何提示什麼是解決這個問題的正確方法?Asp.Net 4.0 MVC 3:發佈html代碼

回答

1

您是否已將Validate Input屬性添加到控制器方法中?

[ValidateInput(false)] 

我認爲你只需要這些在你的web.config,如果使用網頁形式以及mvc,但可能值得一試。

<system.web> 
    <httpRuntime requestValidationMode="2.0" /> 
</system.web> 

<system.webServer> 
    <validation validateIntegratedModeConfiguration="false" /> 
</system.webServer> 
+0

在MVC 3 – Matus 2013-04-24 08:44:00

+0

不需要web.confix修改這不是對於只有一個領域的所有驗證很好,我更喜歡Matthew abbot的答案。 – Mohammadreza 2014-04-02 10:04:34

5

您的輸入模式,您可以定義:

public class FormViewModel 
{ 
    [AllowHtml] 
    public string Content { get; set; } 
} 

哪裏Content是您的相應字段:

@Html.EditorFor(m => m.Content) 
+0

我不使用輸入模型。 – Achim 2011-06-08 12:54:33

+0

大聲笑,也許你應該?它有助於將所有輸入參數封裝到結構化模型中,併爲您提供模型綁定和模型驗證的好處... – 2011-06-08 13:44:25