2011-03-15 80 views
0

我試圖做類似的東西使用的HandleError出MVC3盒子,問題

首先,Visual Studio創建一個新的MVC 3項目2010

接下來,打開自定義錯誤的意見\共享\ Web.config文件

<system.web> 
    <customErrors mode="On"/> 
... 

然後,我把標籤在指數的ActionResult,家庭控制器

Public Class HomeController 
    Inherits System.Web.Mvc.Controller 


    <HandleError()> _ 
    Function Index() As ActionResult 
     ViewData("Message") = "Welcome to ASP.NET MVC!" 
     Throw New InvalidOperationException 
     Return View() 
    End Function 

    Function About() As ActionResult 
     Return View() 
    End Function 



End Class 

最後運行該應用程序,並始終顯示黃色的消息錯誤。我回顧了很多示例,並始終表示這是正確的,但不起作用。

我感謝你的幫助

回答

5

你應該在主要~/web.config文件做到這一點,而不是一個在~/Views/Shared/Web.config

<system.web> 
    <customErrors mode="On"/> 
    ... 
</system.web> 

還要確保~/Views/Shared/Error.cshtml存在,因爲這將是渲染視圖在有例外的情況下。

而您不再需要用<HandleError()>屬性修飾控制器,因爲ASP.NET MVC 3使用全局過濾器來實現此目的。

+0

謝謝,這節省了一些時間! – isntn 2011-08-08 12:49:12