在我的ASP.NET MVC應用程序中,我不想向用戶報告所有異常消息。但是我想向用戶報告某些類型的異常,所以我創建了一個動作過濾器來決定它是否是這種特定類型的異常,如果是,則顯示異常的消息,否則顯示通用消息。所以我創建了一個名爲ClientException的自定義異常。向用戶報告異常消息時的最佳實踐
我的過濾器看起來是這樣的:
if (filterContext.Exception is ClientException)
message = filterContext.Exception.Message.Replace("\r", " ").Replace("\n", " ");
else
message = "An error occured while attemting to perform the last action. Sorry for the inconvenience.";
filterContext.HttpContext.Response.Status = "500 " + message;
我讀這http://blogs.msdn.com/b/kcwalina/archive/2007/01/30/exceptionhierarchies.aspx在這裏筆者建議使用現有的.NET異常類型報告使用錯誤。但是,通過引入我的自定義例外,我只需在我的過濾器中執行一次檢查。我的方法好嗎?
感謝您的有用信息。 – Prabhu 2011-03-05 00:37:48