2016-08-26 5 views
0

カスタムエラー属性を使用して、MVCプロジェクトで例外処理を実装したいと考えています。HandleErrorAttributeを使用したMVCでの例外処理

hereは、ビュー名、コントローラー名などを入力する場所と、コントローラーとアクションを新しい属性でどのように装飾するかという点で不完全です。

ご協力いただければ幸いです。

答えて

0

次いで単にそのような

[MyCustomErrorAttribute] 
public class HomeController: Controller 
{ 

} 
としてコントローラレベルで属性を使用 Global.asax.cs

public static void RegisterGlobalFilters(GlobalFilterCollection filters) 
{ 
    filters.Add(MyCustomErrorAttribute); 
} 

に次のコードを追加するよう

public class MyCustomErrorAttribute : HandleErrorAttribute 
{ 
     public override void OnException(ExceptionContext filterContext) 
     { 
      var controllerName = filterContext.RouteData.Values["controller"]; 
      var actionName = filterContext.RouteData.Values["action"]; 
      //Do something with the Controller or Action, e.g. Logging the exception 
      base.OnException(filterContext); 
     } 
    } 

としてカスタムエラー属性を作成

またはそのようなアクションメソッドレベルで

public class HomeController: Controller 
{ 
    [MyCustomErrorAttribute] 
    public ActionResult Index(){ 

    } 
} 
関連する問題