2014-02-10 63 views
1

當插入帶有「<」的記錄時,出現此錯誤。從客戶端MVC4檢測到有潛在危險的Request.Form值

如何解決這個錯誤,在其中插入一個帶有「<」的字符串。 即時通訊使用實體框架。此列具有nvarchar的數據類型。

在此先感謝。

+1

此問題已被錯誤地標記爲重複,因爲這是特定於MVC版本4,並且可以有不同類型的解決方案(特定於架構和版本)。 –

回答

14

你可以嘗試在web.config

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

<httpRuntime />元素上設置屬性requestValidationMode="2.0"和裝飾您的控制器/動作(選擇apropriate一個):

[HttpPost] 
[ValidateInput(false)] 
public ActionResult MyMethod(string s) 
{ 
    .... 
} 

注:始終淨化你的輸入。

+0

當我使用[ValidateInput(false)]我的對象的值變爲null。 –

+0

您能否通過樣本輸入和控制器操作更新您的問題? – scheien

+0

@scheien謝謝,我一直在解決這個問題。最後我能解決它。再次感謝..!! – User5590

8

除了@scheien已經建議的內容之外,您可以檢查是否將輸入(具有潛在危險腳本,即<字符)設置爲某個不接受它的模型值。嘗試這樣做:

[AllowHtml] 
public string text{ get; set;} 
相關問題