Areas "Multiple types were found that match the controller named ..." hatası

Temmuz 2012 | Ahmet Faik, Yazılım Geliştirme Uzmanı
Projenizde Areas kullandıgınız şöyle bir hata ile karşılaşabilirsiniz;

"Multiple types were found that match the controller named 'Home'." 
"This can happen if the route that services this request ('{controller}/{action}/{id}')"
"does not specify namespaces to search for a controller that matches the request. If this is the case,"
"register this route by calling an overload of the 'MapRoute' method that takes a 'namespaces' parameter."

Bunu öncelemenin 2 yolu vardır;

1-Yol Areas içindeki

public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Admin_default",
"Admin/{controller}/{action}/{id}",
new { area = "Admin", action = "Index", id = UrlParameter.Optional }
);
}

2-Yol Global.asx içindeki

routes.MapRoute("Default", "{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
, new[] { "AppName.Areas.Admin.Controllers" });

Ekleme yaparak sorunu çözebiliriz