我的頁面上有一些鏈接,但尚未創建控制器。我有我的自定義控制器工廠是這樣的:如何優雅地處理DefaultControlFactory的CreateController
public class MyControllerFactory : DefaultControllerFactory
{
public override IController CreateController(RequestContext requestContext, string controllerName)
{
try
{
IController controller = base.CreateController(requestContext, controllerName);
HttpContext.Current.Items["Controller"] = controller;
return controller;
}
catch { return null; }
}
}
這工作正常,只要它可以找到控制器。然而,如果我從我的方法中返回null,我會拋出死亡的黃色屏幕。我該如何優雅地處理這個問題?我想重定向到一些頁面以及404格式良好的消息,或者顯示一些消息,如「進行中」。
的出發點是捕獲異常並記錄它,而不是隱藏它並返回null。在那一點上,你將能夠解釋拋出什麼樣的異常,並調查最好的方法來修復/避免這種情況... –