2011-03-08 2 views

답변

5
HttpContext.Current.Response.RedirectToRoute(...) 
+0

응용 프로그램 시작이 완료되기 전에 컨텍스트를 사용할 수 없습니다. 대부분의 경우 전역 오류를 처리하는 경우 런타임에 예외가 발생합니다. 이것이 왜 그렇게 많은 표를 얻었는지 확실하지 않은 것은 좋은 대답이 아닙니다. –

5

함으로써 Application_Error 같은 몇 가지 일을하고 싶은 것은 정말 MVC 응용 프로그램에서 오류를 처리 할 수있는 설계 방법이 아니다.

선호하는 방법은 다음과 같습니다

도움이 될 수있는 몇 가지 더 많은 링크 :

  • http://blog.dantup.com/2009/04/aspnet-mvc-handleerror-attribute-custom.html
  • , 난 당신이 지금 당장 사용하지 않을 경우 ELMAH를 사용하는 것이 좋습니다 것입니다. NuGet 패키지로받을 수 있습니다.

    0

    오류 발생시 리디렉션되지 않아야합니다. HTTP 3xx 헤더를 보내지 않으려 고하며 실제 상황이 실제로 진행될 때 불쾌한 리디렉션 루프가 발생할 수 있습니다.

    +0

    "오류"로 리디렉션해야하는 많은 이유가 있습니다. 예를 들어, IIS는 404를 오류로 처리하고 404 등으로 응답하는 대신 영구 또는 기타 리디렉션을 원하는 경우가 많습니다. –