MVC uygulamamdaki hataları belirlemek için bazı temel kodum var. Şu anda Projemdeki adında bir denetleyiciniz Erroraksiyon yöntemlerle HTTPError404(), HTTPError500()ve General(). Hepsi bir dize parametresi kabul eder error. Aşağıdaki kodu kullanma veya değiştirme. Verileri işlenmek üzere Hata denetleyicisine iletmenin en iyi / doğru yolu nedir? Mümkün olduğunca sağlam bir çözüme sahip olmak istiyorum.
protected void Application_Error(object sender, EventArgs e)
{
Exception exception = Server.GetLastError();
Response.Clear();
HttpException httpException = exception as HttpException;
if (httpException != null)
{
RouteData routeData = new RouteData();
routeData.Values.Add("controller", "Error");
switch (httpException.GetHttpCode())
{
case 404:
// page not found
routeData.Values.Add("action", "HttpError404");
break;
case 500:
// server error
routeData.Values.Add("action", "HttpError500");
break;
default:
routeData.Values.Add("action", "General");
break;
}
routeData.Values.Add("error", exception);
// clear error on server
Server.ClearError();
// at this point how to properly pass route data to error controller?
}
}