I want to define two areas in MVC 3 project
"manager and main areas",
manager have some controles like main areas "the controler's Name in both have similar"
but I have implemented different methods in each controler
when I try to run my project, get this error:
Server Error in '/' Application. The resource cannot be found. Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly. Requ开发者_开发技巧ested URL: /main/home Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1
When I implement the project without use "Areas". I never get error, but my project is not clean
I'm assuming in your Global.asax in Application_Start you have:
AreaRegistration.RegisterAllAreas();
as one of the first steps yes?
And in the Area/Main folder you have a MainAreaRegistration.cs which is something like the following:
public class MainAreaRegistration : AreaRegistration
{
public override string AreaName
{
get
{
return "Main";
}
}
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Main_default",
"Main/{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional },
new[] { "MyCompany.Web.Areas.Main.Controllers" }
);
}
}
I've found it necessary to fuly qualify routes with their appropriate namespaces (the namespace the controllers live in) once I have multiple areas to avoid confusion also. Obviously the namespace above is just how I structure mine, though whatever namespace your Main area controllers are in, that's the one to put in the file above.
Hope this helps.
Cheers, Terry
In Global.asax try to change route to:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional }, // Parameter defaults
new string[] { "YourNamespace.Controllers" } // ADD THIS
);
精彩评论