2010-02-11 4 views
2

사용자 지정 오류 처리 메서드를 작성하고 Exception 개체를 전달하고 있습니다. Exception의 ExceptionContext 객체에 액세스 할 수 있어야하므로 Error 뷰를 실행하기 전에 속성을 true로 설정할 수 있습니다. ExceptionContext에 도착하는 법을 아는 사람이 있습니까? 것이다 true로 설정해야합니다 ExceptionHandled 나는 온라인으로 읽었습니다.NET : Exception 개체에서 ExceptionContext 개체에 액세스하는 방법

filterContext.ExceptionHandled = true; // filterContext is of type ExceptionContext 
this.View("Error_partial", filterContext.Exception).ExecuteResult(this.ControllerContext); 

, 또는 다음과 같은 성명 : 참고로

, 나는 ExceptionContext 객체를 필요로하는 이유는 그래서 아래의 코드를 수행 할 수있다 내가 좋아할만한 친숙한 "Error_partial"페이지가 아닌, 노란 죽음의 화면을 던져라. 따라서 Exception의 ExceptionContext에 액세스 할 수 있어야합니다. 어떤 도움이라도 대단히 감사 할 것입니다.

답변

-1

이미 존재하는 ExceptionContext 개체가 없다면;

하나를 생성하고 Exception 개체를 전달하면 전달한 Exception 개체를 기반으로 ExceptionContext이 생성됩니다.

매우 늦게 파티에 here

+0

@ 토니, 나는 이것에 대해 생각해 보았지만, ExceptionContext의 관련 속성이 여전히 동일 할 지 궁금해했습니다. 분명히 새로운 것을 만들면 속성을 재설정하지 않겠습니까? 어쩌면 상관 없어, 내가 뭘 하려는지 주어진다. –

+0

@Mega Matt, MSDN 라이브러리에서 내가 이해 한 바로는, 현재 Exception 객체를 사용하여 새로운 객체를 생성 할 것이라고 말하고있다. 나는 그렇게 할 것 같아 어떤 속성을 설정해야합니다. 그러나 나는 확실하지 않습니다 ... –

0

봐, 그리고 당신이 이미 해결 한 가정하지만, 다른 사람의 이익을 위해 : 당신은 IExceptionFilter를 구현하는 클래스를 생성하고 해당를 추가 할 수 있습니다

컨트롤러 용 필터 모음 또는 GlobalFilterCollection. 사용자 지정 예외 처리 논리를 클래스의 OnException 메서드에 넣습니다.이 메서드는 ExceptionContext 인수를 사용할 수 있습니다. 노란색 화면의 죽음을 피하려면 ExceptionHandled 속성을 true으로 설정해야하는 대상입니다.

+0

downvote를 설명하십시오. 감사. – phoog

관련 문제