2012-04-20 82 views
4

我正在构建ASP.NET MVC 4应用程序,并希望将我的站点管理区域作为单独项目中的MVC区域。单独项目中的MVC 4管理区域

我添加了一个新的MVC 4 Web应用程序项目到我的水溶液,并添加下列文件注册我区:

public class AdminAreaRegistration : AreaRegistration 
{ 
    public override string AreaName 
    { 
     get { return "Admin"; } 
    } 

    public override void RegisterArea(AreaRegistrationContext context) 
    { 
     context.MapRoute(
      "Admin_default", 
      "Admin/{controller}/{action}/{id}", 
      new { controller = "Home", action = "Index", area = "Admin", id = UrlParameter.Optional }, 
      new[] { "Future.Admin.Controllers" } 
     ); 
    } 
} 

然而这会导致以下错误:

A route named 'Admin_default' is already in the route collection. Route names must be unique. 

我已经将管理区项目的构建输出路径更改为指向主站点项目。

有什么我丢失或没有配置?

任何帮助非常感谢!

回答

5

如果此路线只在您的代码库中声明一次,请清理并重新生成解决方案。如果您的bin文件夹中有“旧”dll(例如,如果您已经重命名了一个项目),并且注册了此路由,则会发生这种情况。

+0

它对它进行了排序!我的垃圾箱中有一个旧的DLL导致问题。谢谢你的帮助。 – 2012-04-20 13:44:58