ASP.NET MVC---サイトエラー処理

1927 ワード

エラー処理について


try...catch文、一定の限界がある
  • 一般適合文のエラー処理
  • ページ不適合等の問題がない処理
  • エラー処理構成

  • Web.configエラー処理は、典型的にはsystemに配置する.Webノードに構成
        
          
        
    defaultRedirectを追加する:エラーが発生した場合、ブラウザがリダイレクトしたURL mode:Onはカスタム起動エラー、Offはカスタム無効エラー、RemoteOnlyはリモートクライアントにカスタムエラーを表示し、ローカルホストにASPを表示する.NETエラーstatusCode:Http内の特定のエラーステータスコードredirect:このエラーステータスコードが発生したときにリダイレクトするページ
  • HandleErrorを使用してエラーWebを処理する.config構成の限界
  • ウェブサイト全体のエラーに対して、エラー表示ページを構成するが、この情報表示は一般的にあいまいである
  • を示す.
  • ある種類のコントローラ、さらには動作方法について、より具体的な情報を表示する場合、Webを使用する.config方式が不適切
  • try catchを使用しても不適切(トラフィックコードとエラーコードの混成)
  • HandleError特性:動作方法に対してより便利なエラー表示方式
            [HttpPost]
            [HandleError( ExceptionType =typeof(System.Exception),View ="Error")]
            public ActionResult GetUserInfor(int Id)
            {
                UserServer server = new UserServer();
                UserInfor user = server.GetUserDetail(Id);
                ViewBag.User = user;
                return View();
            }
    ExceptionType:       
    View:   Error  
  • コントローラに特性
  • を追加する.
  • Errorビュー:現在のコントローラに対応するViewフォルダまたはSharedフォルダの
  • を作成します.
  • に二次特性を適用すると、Web.Configで定義されたエラー処理構成は、
  • で無効になります.
    エラーの詳細は、エラーが発生した場合、HandleErrorが異常情報をHandleErrorInforオブジェクトにカプセル化し、Errorビューに渡すため、Errorビューで実現できる.

    よくあるエラーステータスコード


    404:ファイルが見つからないことを示す
    403:アクセス禁止
    500:内部サーバエラー
    [https://www.cnblogs.com/daiyacheng1991/p/11411511.html]:
    ステータスコード
    カテゴリ
    の原因となる
    1xx
    Informational
    受信したリクエストは処理中です
    2xx
    Success(成功ステータスコード)
    要求正常処理完了
    3xx
    Redirection(リダイレクトステータスコード)
    要求を完了するには追加の操作が必要です
    4xx
    Client Error(クライアントエラーステータスコード)
    サーバがリクエストを処理できません
    5xx
    Server Error(サーバエラーステータスコード)
    サーバ処理要求エラー