我有一個ASP.Net MVC 2 Web應用程序,我有HomeController。索引方法生成未經授權的異我有customErrors = on。現在我想用Exception.Message在共享文件夾中顯示一個視圖Error.aspx。但是我在瀏覽器中找不到資源/錯誤。HandleError屬性不能以預期的方式工作
注:我已經通過了StackOverflow上的所有相關鏈接。
有幫助嗎?
我有一個ASP.Net MVC 2 Web應用程序,我有HomeController。索引方法生成未經授權的異我有customErrors = on。現在我想用Exception.Message在共享文件夾中顯示一個視圖Error.aspx。但是我在瀏覽器中找不到資源/錯誤。HandleError屬性不能以預期的方式工作
注:我已經通過了StackOverflow上的所有相關鏈接。
有幫助嗎?
循序漸進:
修改HomeController的,這樣它看起來像這樣的新的ASP.NET MVC項目:
[HandleError]
public class HomeController : Controller
{
public ActionResult Index()
{
throw new Exception("oops");
}
}
將以下內容添加到web.config的<system.web>
部分:
<customErrors mode="On" />
運行應用程序
~/Views/Shared/Error.aspx
顯示謝謝。但我想將Exception對象傳遞給這個錯誤視圖,以便我可以顯示消息。 – Morin 2011-05-20 12:28:04
@Morin,異常對象已通過'HandleError'動作過濾器傳遞給'Error.aspx'視圖。這個視圖強制類型爲「System.Web.Mvc.HandleErrorInfo」。因此,您可以簡單地:'<%= Html.DisplayFor(x => x.Exception.Message)%>'來顯示錯誤消息。 – 2011-05-20 13:10:13
請張貼一些代碼,你如何使用自定義錯誤屬性。並注意,默認情況下,該屬性加載默認的'error.aspx'視圖。所以請確保你沒有刪除它。 – sra 2011-05-20 11:52:41