0
在控制器內部執行錯誤處理和日誌記錄,或者處理OnException方法是否有意義。一種方式意味着即使在沒有任何事情可以從錯誤中恢復時,也可以在所有操作方法中寫入try/catch。在控制器級別處理此操作將允許在沒有在所有操作方法內寫入try/catch的情況下記錄並重定向到錯誤處理程序頁面。使用MVC控制器中的錯誤處理
哪種方法最有意義?以下是操作方法中try/catch的示例代碼。
[HttpPost]
public ActionResult Delete(int id)
{
using (new Tracer("Project Controller"))
{
try
{
Logger.Write("Deleting project");
projService.DeleteProject(id);
TempData["message"] = "Project Deleted successfully";
}
catch (System.Exception ex)
{
HandleException(ex, "Project could not be deleted.");
}
return RedirectToAction("List");
}
}