このリンクによると、Request.Unvalidatedを使用して、リクエストの検証をトリガーせずにフォームフィールドの生の値にアクセスできます(恐ろしいエラーメッセージ「潜在的に危険なRequest.Form ...」を参照してください)。残念ながら、私はそれを動作させることができませんでした。
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.NETMVCの例はありませんでした。
ツールボックス:ASP.NET MVC 4プロジェクトを使用しており、.NET4.5およびVS2012を対象としています。
ありがとう、
更新:DescriptionプロパティでAllowHtmlを使用すると、Request.Unvalidatedが必要ない場合でも、問題が修正されました。以下の@webdeveloperの回答でコメントしたように、まだ問題があります。