Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ASP.NET MVC area namespace problem

I create a new area in my asp.net mvc 3 solution named admin. Visual studio automatically assign the names space:

MyApp.areas.admin.controllers

I change this to MyApp.admin.controllers

But it stops resolving the action.
Any help in this regard will be appreciated.
Thanks

like image 580
Shakeeb Ahmed Avatar asked Jul 19 '11 19:07

Shakeeb Ahmed


1 Answers

You need to specify the new namespace when registering the route for your admin area.

In your \Areas\admin\adminAreaRegistration.cs file, you need to modify the RegisterArea() method as follows:

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
    );
}
like image 183
rycornell Avatar answered Oct 25 '22 05:10

rycornell