2012-08-13 120 views
0

我有以下結構的項目:MVC兩個區域具有相同名稱在不同的項目

解決方案
- CMS.core
---地區
------聯繫
- --------控制器
- Site.Web
---地區
------聯繫
---------控制器

每次我嘗試路由到一個控制器site.web/areas/admin/controllers下,它似乎只是看在cms.core/areas/admin/controllers

這是否有意義?我怎麼路線MVC到位於不同的項目名稱相同的多個領域?

回答

0

您需要提供該控制器所在的命名空間。例如:

routes.MapRoute(
    "SiteWebAdminRoute", 
    "site.web/areas/{controller}/{action}/{id}", 
    new { Area = "SiteWeb", controller = "Home", action = "Index", id = UrlParameter.Optional }, 
    new string[] { "Site.Web.Areas.Admin.Controllers" }); 

相似..或東西。注意下面的字符串數組。如果您在智能感知一下,就說明你這個字符串數組表示任何命名空間,其中這條路線應找控制器。你可以做同樣的與其他地區的路線..除非你能提供一個不同的命名空間中查找。

+0

我曾嘗試提供命名空間,但我仍然獲得了404當我嘗試去工地內的控制器。網絡/區域/管理/地區... 我無法弄清楚如何代碼塊與任何額外的代碼添加到回覆本網站... – KCWebMonkey 2012-08-14 14:56:46

+0

編輯你原來的問題。你能提供你正在嘗試的URL和兩條路線嗎? – 2012-08-15 02:08:15

相關問題