Ich habe eine leere MVC4-Anwendung erstellt, alle Dinge funktionieren gut, danach füge ich meinem Projekt einen Bereich namens "Moderator" hinzu. Mein Bereich Routing-Code ist wie folgt:MVC 4 Area Routing funktioniert nicht
using System;
using System.Web.Mvc;
namespace EskimoArt.Areas.Moderator
{
public class ModeratorAreaRegistration : AreaRegistration
{
public override string AreaName
{
get
{
return "Moderator";
}
}
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Moderator_default",
"Moderator/{controller}/{action}/{id}",
new {controller="Dashboard", action = "Index", id = UrlParameter.Optional }
);
}
}
}
Und mein Global.asx Code ist wie folgt:
using System.Web.Http;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Routing;
namespace EskimoArt
{
// Note: For instructions on enabling IIS6 or IIS7 classic mode,
// visit http://go.microsoft.com/?LinkId=9394801
public class MvcApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
}
}
Aber jetzt möchte ich die
Zugang zu> http://localhost/Moderator/Dashboard
ein Fehler zeigt Seite wie diese
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.
Requested URL: /Moderator
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.17929
Haben Sie Controller in Ihrer Nähe? –
Ja Ich habe Controller in meiner Umgebung. Ich erkläre das Problem durch folgende Option, die ist, dass nur AreaRegistration aufrufen.RegisterAllAreas(); vor Ihrer Standardroute –