ASP.NET MVC 区域命名空间问题

8

我在我的asp.net mvc 3解决方案中创建了一个名为admin的新区域。 Visual Studio会自动分配命名空间:

MyApp.areas.admin.controllers

我将把这个改成MyApp.admin.controllers,但它停止解析该操作。如有任何帮助,将不胜感激。谢谢。

3
命名空间为什么重要? - Gregory A Beamer
你有改过其他的东西吗?移动了文件,重命名了文件夹,从区域注册文件中删除了路由注册吗? - dreza
1个回答

16

在为管理员区域注册路由时,您需要指定新的命名空间。

在您的 \Areas\admin\adminAreaRegistration.cs 文件中,您需要修改 RegisterArea() 方法如下:

public override void RegisterArea(AreaRegistrationContext context)
{
    context.MapRoute(
        "admin_default",
        "admin/{controller}/{action}/{id}",
        new { action = "Index", id = UrlParameter.Optional }, 
        new string[] { "MyApp.admin.Controllers" }  // specify the new namespace
    );
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接