2013-09-21 3 views
0

ASP.NET MVC 4 응용 프로그램이 있습니다. 내 사용자 지정 핸들 오류 특성을 사용하고 싶습니다. 그 때문에 나는이 클래스 쓴 :ASP.NET MVC 4 사용자 지정 핸들 오류

public class MyHandleErrorAttribute : HandleErrorAttribute 
    { 
     public void OnException(ExceptionContext filterContext) 
     { 
      Debug.WriteLine("Error Occured"); 
     } 
    } 

을 그리고 컨트롤러 수준에서 속성을 추가 한 :

[MyHandleError(ExceptionType = typeof(Exception),View="ErroView")] 
    public class MeetingController : Controller 
    {....} 

오류가 컨트롤러에 occures

, 그것은 처리 할 수 ​​없습니다. 오류 발생 후 디버거에서 F5 키를 누르면 ErrorView가 표시됩니다. 그러나 Debug.WriteLine("Error Occured"); 라인은 작동하지 않습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

1

OnException methodvirtual이지만 여기에 override 수정자가 없으므로이 방법을 숨기고 무시하지 않습니다. 따라서 사용자 정의 메서드는 MVC 프레임 워크에서 호출하지 않습니다.

public class MyHandleErrorAttribute : HandleErrorAttribute 
{ 
    public override void OnException(ExceptionContext filterContext) 
    { 
     base.OnException(filterContext); 
     Debug.WriteLine("Error Occured"); 
    } 
} 
:

방금 ​​ override에 방법을 필요로이 문제를 해결하려면
관련 문제