根據該鏈接,現在我們可以使用Request.Unvalidated訪問表單字段的原始值wihout觸發請求驗證(並看到可怕錯誤消息甲潛在危險的Request.Form ...)。不幸的是我無法得到它的工作。如何使用Request.Unvalidated與ASP.NET MVC 4?
的Web.config
<httpRuntime targetFramework="4.5" requestValidationMode="4.5" />
在視圖模型一個簡單的領域:
// [AllowHtml] - even I tried this, it still did not work :(
public string Description { get; set; }
和控制器的動作:
[HttpPost]
public ActionResult Edit([Bind(Prefix = "Edit")] EditModel model)
{
string s = Request.Unvalidated.Form["Edit.Description"];
}
我仍然看到錯誤「有潛在危險的Request.Form ......「,爲什麼?試過谷歌,但沒有ASP.NET MVC的例子。
工具箱:我正在使用ASP.NET MVC 4項目,面向.NET 4.5和VS2012。
感謝,
UPDATE:使用AllowHtml與Description屬性固定我的問題,甚至不需要Request.Unvalidated。在@ webdeveloper的回答中,我仍然在評論下面的問題。
我的代碼有什麼問題嗎?編輯操作到達之前出現錯誤。 –
@Tiendq它落在綁定上,'Unvalidated'的想法是你可以訪問具有'潛在危險的Request.Form'的字段,但是這裏有'Edit([Bind(Prefix =「Edit」)] EditModel model)'binder works沒有'未經驗證'。 – webdeveloper
謝謝,我用HtmlAllow修復了它。但正如你所說,有沒有機會使用模型綁定和Request.Unvalidated? –