2016-12-28 90 views
0

每個區域不同的自定義錯誤頁,我設計一個網站,有管理員的一個區域(經理)。在主要的網站我很容易在webconfig中定製錯誤頁面。與此:如何顯示ASP.NET MVC 5

<httpErrors errorMode="Custom" existingResponse="Replace" defaultResponseMode="ExecuteURL"> 
    <remove statusCode="400"/> 
    <remove statusCode="401"/> 
    <remove statusCode="403"/> 
    <remove statusCode="404"/> 
    <remove statusCode="408"/> 
    <remove statusCode="409"/> 
    <remove statusCode="500"/> 
    <error statusCode="400" responseMode="ExecuteURL" path="/Error/400"/> 
    <error statusCode="401" responseMode="ExecuteURL" path="/Error/401"/> 
    <error statusCode="403" responseMode="ExecuteURL" path="/Error/403"/> 
    <error statusCode="404" responseMode="ExecuteURL" path="/Error/404"/> 
    <error statusCode="408" responseMode="ExecuteURL" path="/Error/408"/> 
    <error statusCode="409" responseMode="ExecuteURL" path="/Error/409"/> 
    <error statusCode="500" responseMode="ExecuteURL" path="/Error/500"/> 
</httpErrors> 

現在我想表明,在管理區一些不同的自定義錯誤頁(就像他們的面板)的管理員。

有人可以告訴我,我該怎麼辦呢?

編輯: 我把一個新的web.config文件放在/Areas/Manager文件夾中。

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
<system.webServer> 
<httpErrors errorMode="Custom" existingResponse="Replace"  defaultResponseMode="ExecuteURL"> 
    <remove statusCode="400"/> 
    <remove statusCode="401"/> 
    <remove statusCode="403"/> 
    <remove statusCode="404"/> 
    <remove statusCode="408"/> 
    <remove statusCode="409"/> 
    <remove statusCode="500"/> 
    <error statusCode="400" responseMode="ExecuteURL" path="/Manager/Error/400"/> 
    <error statusCode="401" responseMode="ExecuteURL" path="/Manager/Error/401"/> 
    <error statusCode="403" responseMode="ExecuteURL" path="/Manager/Error/403"/> 
    <error statusCode="404" responseMode="ExecuteURL" path="/Manager/Error/404"/> 
    <error statusCode="408" responseMode="ExecuteURL" path="/Manager/Error/408"/> 
    <error statusCode="409" responseMode="ExecuteURL" path="/Manager/Error/409"/> 
    <error statusCode="500" responseMode="ExecuteURL" path="/Manager/Error/500"/> 
</httpErrors> 
    </system.webServer> 
</configuration> 

我甚至把httpErrors部分放在~/Areas/Manager/Views/web.config。但總是因爲錯誤我看到/Error/ErrorCode而不是/Manager/Error/ErrorCode頁面。

+0

是如何管理的404消息從客戶404有什麼不同?你能不能一起展示兩個模型? – Win

+0

在我的經理區域,我有一個管理面板(AdminLte)不同的菜單,邊欄和頁腳等,它們有一個完全不同的_Layout。 –

回答

0

創建一個新的web.config是去在管理/ Manager文件夾。然後該文件夾可以擁有自己的httpErrors組,只適用於位於該文件夾中的頁面。

+0

你是指/ Areas/Manager文件夾?我做到了。但不起作用。 –

+0

你可以嘗試在Manager文件夾中的web.config中添加errorMode =「Custom」嗎? - 每個StackOverflow問題在這裏:http://stackoverflow.com/questions/27487157/how-to-set-net-error-pages-for-a-specific-folder-in-iis-7和這一個在這裏:http: //stackoverflow.com/questions/27487157/how-to-set-net-error-pages-for-a-specific-folder-in-iis-7 –