내 응용 프로그램에서 사용자 지정 오류가 발생하면 사용자를 전역 적으로 리디렉션해야합니다. 내 사용자 지정 오류를 검색하기 위해 내 logic.asax 파일에 논리를 넣으려고 시도했으나 throw 된 경우 리디렉션을 수행하지만 내 응용 프로그램이 global.asax 메서드를 절대 사용하지 않습니다. 내 예외가 사용자 코드에 의해 처리되지 않았다는 오류 메시지를 계속 제공합니다.사용자 지정 예외가 throw 된 경우 asp.net mvc 리디렉션
여기 내 세계에있는 것이 있습니다.
protected void Application_Error(object sender, EventArgs e)
{
if (HttpContext.Current != null)
{
Exception ex = HttpContext.Current.Server.GetLastError();
if (ex is MyCustomException)
{
// do stuff
}
}
}
다음과 같이 나의 예외가 발생 : 나는 예외를 던지는 파일 내에서 시도 캐치로, 나의함으로써 Application_Error 방법에 도달하지 도착 결코 넣어
if(false)
throw new MyCustomException("Test from here");
. 누구든지 내가 어떻게 처리 할 수 있는지에 대한 제안을하고있다. (내 사용자 정의 예외 처리)?
감사합니다.
1/15/2010 편집 : 여기에있는 내용은 // 할 일이 있습니다.
RequestContext rc = new RequestContext(filterContext.HttpContext, filterContext.RouteData);
string url = RouteTable.Routes.GetVirtualPath(rc, new RouteValueDictionary(new { Controller = "Home", action = "Index" })).VirtualPath;
filterContext.HttpContext.Response.Redirect(url, true);
+1 Do stuff 비트의 경우 – stuartdotnet