2013-01-22 50 views
1

我在我的MVC解決方案稱爲區域/管理員是否可以覆蓋一個MVC區域的自定義錯誤/

內/管理/ views文件夾有一個標準的Web .config文件。我已經包含在這個配置

提交customerErrors元素的System.Web下:

<customErrors mode="On" defaultRedirect="~/admin/oops" > 
    <error statusCode="404" redirect="~/admin/pagenotfound"/> 
</customErrors> 

從一個在我的根web.config不同。

我的期望是,這將使我能夠特別控制管理區域中的錯誤處理方式。

這不起作用。

我是否正在服用瘋狂藥丸,還是應該能夠使用該區域的web.config中更具體的設置覆蓋默認的web.config設置?

回答

3

其實這裏是一篇關於mvc中的區域的文章。

AREAS in ASP.NET MVC

根據這篇文章,我們不能無視設置..

Web.config文件夾視圖頁面 也稱爲視圖在視圖文件夾中。在MVC中,視圖不會直接暴露在URLS之外。所有查看請求都應該發送給控制器,並使用來自URL的輸入來呈現確切的視圖。視圖是普通的asp.net網頁,所以他們可以訪問一個URL。爲限制直接訪問視圖,我們在視圖文件夾中使用web.config文件。 web.config有一個默認的處理程序映射來阻止所有具有擴展ASPX的頁面。

區域文件夾中的Web.Config 同樣,對於視圖,每個區域都有一個web.config文件用於同一目的。這是爲了限制ASPX文件的訪問。如果我們不想限制它們在區域級別,我們可以刪除這個web.config文件。

Web.Config中的應用程序設置 有許多web.config文件;我們可以在區域特定的web.config文件中設置區域的應用程序設置嗎?答案是否定的,我們不能或有或覆蓋appsettings配置。所有應用程序設置應該在根文件夾的web.config中定義

相關問題