3

私のMVC3アプリケーションでは、最大リクエスト超過エラーを処理しようとすると、上記のエラーが発生します。

私はアプリケーションレベルで例外を処理しています。ビューの共有フォルダにあるエラーページにリダイレクトしようとしています。

リクエストサイズが制限を超えている場合は、以下のコードを使用してエラーページにリダイレクトしています。

 this.Server.ClearError();
 this.Server.Transfer("~/Views/Shared/NotAuthorised.cshtml");

これは取得中のエラーです。

/SiteName/Views/Shared/NotAuthorised.cshtmlの子リクエストの実行中にエラーが発生しました

4

1 に答える 1

4

Microsoftのドキュメント(ASP.NETページでServer.TransferまたはServer.Executeを使用する場合の子要求の実行エラー」エラーメッセージServer.Transferによると、アプリケーションレベルのエラーの後で使用することはできません。

Microsoftインターネットインフォメーションサービス(IIS)は、要求元のファイルの拡張子に基づいて、Server.TransferまたはServer.Execute要求を適切なインターネットサーバーアプリケーションプログラミングインターフェイス(ISAPI)拡張機能にディスパッチします。たとえば、.aspxページの要求は、Aspnet_isapi.dllISAPI拡張子にディスパッチされます。

要求が適切なISAPI拡張機能にディスパッチされた後、ISAPI拡張機能は別のISAPI拡張機能を呼び出すことができません。ASP.NETページへの要求を処理するAspnet_isapi.dllファイルは、ASPページへの要求を処理するAsp.dllファイルに要求を転送できないため、「症状」セクションにリストされているエラーメッセージが表示されます。

Response.Redirect(path)ただし、次のように使用できます。

Response.Redirect("Home/About");
于 2012-11-12T13:19:30.487 に答える