7

ASP.Net MVC アプリケーションを実行していますが、次のエラーに直面しています。私は ASP.Net を初めて使用するので、誰かがそれが何を意味し、どのように解決できるかについて助けてもらえますか?

私はそれを理解するためにグーグルを試みましたが、同じエラーに対して異なる答えを見つけたため、さらに混乱しました。

Global.asax:System.Web.HttpRequestValidationException (0x80004005) でキャッチされた例外: クライアントから潜在的に危険な Request.Form 値が検出されました (ctl00$MainContent$WarningCtl1$TXTWarningText="

これは警告です..."). System.Web.HttpRequest.ValidateString(String value, String collectionKey, RequestValidationSource requestCollection) で System.Web.HttpRequest.ValidateNameValueCollection(NameValueCollection nvc, RequestValidationSource requestCollection) で System.Web.HttpRequest. get_Form() で System.Web.HttpRequest.get_HasForm() で System.Web.UI.Page.GetCollectionBasedOnMethod(Boolean dontReturnNull) で System.Web.UI.Page.DeterminePostBackMode() で System.Web.UI.Page.ProcessRequestMain(ブール値の includeStagesBeforeAsyncPoint、ブール値の includeStagesAfterAsyncPoint) の System.Web.UI.Page.ProcessRequest (ブール値の includeStagesBeforeAsyncPoint、ブール値の includeStagesAfterAsyncPoint) の System.Web.UI.Page.ProcessRequest() の System.Web.UI.Page.System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() の ASP.app_config_appttypes_groupappttypes_aspx.ProcessRequest(HttpContext コンテキスト) の ProcessRequest(HttpContext コンテキスト) System.Web.HttpApplication.ExecuteStep(IExecutionStep ステップ、ブール値および completedSynchronously)

提案してください。

4

3 に答える 3

8

コントローラにを追加する必要がありValidateInputAttributeます(これは、そのコントローラのすべてのアクションメソッドに適用されるため、注意してください)。

[ValidateInput (false)]
public class MyController : Controller { ... }

またはあなたの行動方法:

public class MyOtherController : Controller
{
    [ValidateInput (false)]
    public ActionResult MyActionMethod (MyObjectThatTakesInHtml myObject)
    { ... }
}

編集

@dotjoeが指摘し、言及するのを忘れたように、モデル内のプロパティのAllowHtmlAttribute(にある)にもアクセスできます。System.Web.Mvc

public class MyObjectThatTakesInHtml
{
    [AllowHtml]
    public string MyHtmlProperty { get; set; }
}
于 2012-05-31T18:30:03.687 に答える
-1

MVC

アクションに属性を追加 [ValidateInput(false)]

system.web の web.config 設定を確認します。

于 2014-02-28T16:05:23.957 に答える