1

mvc 3、iis 6のstackoverflowのような400の悪いリクエストを処理する方法は?

例:www.stackoverflow.com/a <

YSODページの代わりに、404notfoundページを返します

更新:なぜこれが機能しないのですか?

  <httpErrors errorMode="Detailed">
     <remove statusCode="404" subStatusCode="-1" />
     <error statusCode="404" subStatusCode="-1" path="/notfound" responseMode="ExecuteURL" />
     <error statusCode="400" subStatusCode="-1" path="/Error" responseMode="ExecuteURL" />
  </httpErrors>
4

1 に答える 1

1

web.configのcustomErrorsタグを使用します。

<customErrors mode="On" defaultRedirect="UrlToRedirect" >
  <error statusCode="400" redirect="UrlToRedirect"/>
</customErrors>

例えば。:

<customErrors mode="On" defaultRedirect="~/Error/Index">
  <error statusCode="400" redirect="~/Error/Index"/>
</customErrors>

UrlToRedirect = "〜/ Error / Index"の場合、ここで、このURLでは、 "Error"はコントローラーの名前であり、"Index"はエラービューページを返すアクションメソッドの名前です。

public class ErrorController : Controller
    {
        public ActionResult Index()
        {
            return View("Error");
        }
    }

アプリケーションの「\Views\ SharedFolder」には、「Error.cshtml」ビューページがあります。

于 2012-06-04T10:57:00.600 に答える