Bei meinem ASP.NET MVC 3-Projekt tritt der folgende Fehler auf:
Es wurden mehrere Typen gefunden, die dem Controller mit dem Namen "Home" entsprechen. Dies kann passieren, wenn die Route, die diese Anforderung bedient ('Home / {action} / {id}'), keine Namespaces angibt, um nach einem Controller zu suchen, der der Anforderung entspricht. Wenn dies der Fall ist, registrieren Sie diese Route, indem Sie eine Überladung der 'MapRoute'-Methode aufrufen, die einen' Namespaces'-Parameter verwendet.
Die Anforderung für 'Home' hat die folgenden übereinstimmenden Controller gefunden: MyCompany.MyProject.WebMvc.Controllers.HomeController MyCompany.MyProject.WebMvc.Areas.Company.Controllers.HomeController
Ich habe einen HomeController in meinem Standard-Controller-Ordner mit dem Klassennamen MyCompany.MyProject.WebMvc.Controllers.HomeController.
Meine RegisterRoutes-Methode in meiner global.asax sieht folgendermaßen aus:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
Ich habe dann einen Bereich namens Company mit einem HomeController im Standard-Controller-Ordner für den Bereich mit dem Klassennamen MyCompany.MyProject.WebMvc.Areas.Company.Controllers.HomeController.
Die RegisterArea-Methode in der CompanyAreaRegistration-Datei sieht folgendermaßen aus:
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Company_default",
"Company/{controller}/{action}/{id}",
new { area = "Company", action = "Index", id = UrlParameter.Optional }
);
}
Dies alles führt zu dem Fehler, den ich am Anfang dieses Beitrags hervorgehoben habe. Ich habe Mühe, eine Lösung aus verschiedenen anderen Beiträgen zusammenzustellen, ohne Glück .
Ist es möglich, einen HomeController im Standard-Controller-Ordner und dann einen in JEDEM Bereich zu haben? Wenn ja, muss ich (sofern ich dies tue) Änderungen an meiner Konfigurationsdatei vornehmen, damit dies funktioniert?
Jede Hilfe wäre sehr dankbar!