2012-08-13 90 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

相关问题