2

내 응용 프로그램에 "오류가 발생했습니다."와 같은 오류 메시지를 추가하려고합니다. 예외가 발생하더라도 응용 프로그램의 모든 페이지에 자동으로 오류 페이지가 표시되기를 원합니다. 이것을 어떻게 할 수 있습니까?캐칭 오류 및 오류 페이지

답변

3

는 간단히 Web.config의 사용자 지정 오류 수 :

<customErrors mode="On"> 

</customErrors> 

을하고 ~/Views/Shared/Error.aspx보기는 (컨트롤러가 [HandleError] 속성들로 장식되어 가정) 처리되지 않은 오류에 렌더링됩니다.

[HandleError(
    View = "~/Views/Errors/Custom.aspx", 
    ExceptionType = typeof(SomeCustomException))] 
+0

감사 대린 :

그런 다음 당신은 다른 예외에 대한보다 세밀한 제어와 다른 관점을 가질 수 있습니다. MVC 2에 익숙하지 않아서 web.config에서 를 어디에 넣을까요? 이하입니까? 또한 Error.aspx 파일을 만들거나 시스템에서 생성합니까? 감사. –

+0

@Derek, 네,''는''안에 있습니다. 'Error.aspx'는 보통'~/Views/Shared' 폴더 안에있는 기본 템플릿에 의해 만들어 지지만 존재하지 않으면 생성 할 수 있습니다. –

+0

대린, 내가 네가 한 말대로했다. 나는 그 클래스에 [HandleError]를 넣었다. 코드를 테스트하려면 함수 중 하나에서 예외가 발생합니다. 코드를 실행하면 오류 페이지 (~/Views/Shared/Error.aspx)가 표시되지 않습니다. 내가 뭔가 잘못하고 있는거야? 나는 새 MVC이므로 사과드립니다. 다시 한번 감사드립니다. –