我在MVC3項目中有一個表單。我的一個輸入字段應該接受HTML。不幸的是,我不能擁有這個值映射到的ViewModel。該字段自動生成並自動讀入。我收到以下錯誤。MVC3,關閉不在視圖模型中的字段的字段驗證
A potentially dangerous Request.Form value was detected from the client
由於沒有viewmodel,我不能應用[AllowHTML]屬性。有誰知道一個解決方法,不涉及禁用整個頁面的驗證?
謝謝
附加信息: 我可以通過以下操作訪問未經驗證的值:
using System.Web.WebPages;
using System.Web.Helpers;
.....Inside Controller....
string value = Request.Unvalidated("input-40");
現在的問題是,Request.Params集合拋出異常。我想訪問所有其他值,並驗證它們...只是不是那個。有沒有辦法讓我明確驗證其他字段或訪問驗證的集合。
下就可以了
string value = System.Web.Something.ValidateInput(Request.Unvalidated("input-41"));
不幸的是,我不知道在哪裏/如果此方法存在
如果這是行爲的一個參數,我認爲你可以使用AllowHTML來修飾參數,雖然我不積極。 – 2012-04-10 22:12:48
我認爲你可以使用[ValidateInputAttribute](http://msdn.microsoft.com/en-us/library/system.web.mvc.validateinputattribute.aspx)來修飾操作,但這會影響整個表單集合。 – 2012-04-10 22:14:04
如果我可以弄清楚如何手動調用其他字段值的驗證,那麼修飾操作就沒有問題。有任何想法嗎?我會找一些像System.Web.ValidateInput(Request.Params [「input-name」]) – AFrieze 2012-04-10 22:32:14