2014-09-26 74 views
2

準備好迎接來自我的另一個基本問題......我想我已經掌握了MVC站點中的Area概念,但是我想進一步組織它們,將它們移動到外部項目(包括控制器,視圖,腳本,樣式)或在Area文件夾中創建子文件夾?ASP.Net中的組織領域MVC 5

我想問的原因是我試圖在Areas下創建一個文件夾並將其命名爲Common,然後在該文件夾內創建一個區域並將其命名爲MyTest。當我嘗試瀏覽到mysite.com/mytest時,它失敗。

回答

1

你應該嘗試去通常的的方式和使用區域作爲ASP.NET根文件夾的子文件夾。您的網址失敗的唯一原因是您的AreaRegistration文件沒有正確註冊您的路線。您可以檢查出Glimpse作爲調試路線的方法,或者只是查看這些文件並嘗試找出您的自我。請記住,ASP.NET會自動查找從AreaRegistration繼承的類,並使用它們來註冊特定於您所在區域的路由。如果您的路由似乎配置正確,請確保您的控制器位於路由可見的命名空間中。

如果要將區域(與控制器模型和視圖一起)劃分爲不同的項目,則應考慮創建自己的VirtualPathProvider,因爲這是查找視圖的唯一方法。但是,他們必須是Embedded Resource並且不能被扣留。如果位於單獨的DLL中,您的區域將自動註冊,並且只要該DLL位於主應用程序Bin文件夾中,就會自動找到您的控制器。