0

ASP.NET MVC 3 アプリがあります。このアプリには、JSON を返すコントローラー アクションがいくつかあります。エラーが発生した場合は、ユーザーに投げ返したいです。私のアクションの 1 つの一般的な構造は次のようになります。

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult DoSomething()
{
  try
  {
    // Do something here
    return Json(new { statusCode = StatusCodes.SUCCESS }, JsonRequestBehavior.AllowGet);
  }
  catch (Exception ex)
  {
     // Log it
     LogException(ex);

     // Toss it
     throw ex;
  }
}

私の問題は、例外が発生したときに、Fiddler で 302 が生成されることに気付きました。これは、ここに示すように、web.config のセットアップとしてカスタム エラーを使用した結果だと思います。

<system.web>
  ...
  <customErrors mode="On" defaultRedirect="/error" />
  ...
</system.web>

これは、Fiddler で見られる場所の値のためだと思います。実際にビューを返すアクションのために、カスタム エラーを使用しています。とにかく、私が返すアクションでカスタムエラー設定をバイパスする方法はありJsonResultますか?

ありがとうございました!

4

1 に答える 1

0

可能ですが、Global.asax ファイルを微調整して、次のようにエラーをリダイレクトする必要があります: asp.net MVC3 のカスタム エラー ページ

次に、コントローラー、アクション、またはリクエストの種類に基づいて、さまざまなことを行うことができます。

于 2013-03-09T04:50:51.337 に答える