Estou tendo o seguinte erro com meu projeto ASP.NET MVC 3:
Vários tipos foram encontrados que correspondem ao controlador chamado 'Home'. Isso pode acontecer se a rota que atende a esta solicitação ('Home / {action} / {id}') não especificar namespaces para procurar um controlador que corresponda à solicitação. Se for esse o caso, registre essa rota chamando uma sobrecarga do método 'MapRoute' que leva um parâmetro de 'namespaces'.
A solicitação de 'Home' encontrou os seguintes controladores correspondentes: MyCompany.MyProject.WebMvc.Controllers.HomeController MyCompany.MyProject.WebMvc.Areas.Company.Controllers.HomeController
Eu tenho um HomeController na minha pasta de controlador padrão, com um nome de classe de MyCompany.MyProject.WebMvc.Controllers.HomeController.
Meu método RegisterRoutes, em meu global.asax, é semelhante a:
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
);
}
Tenho então uma área chamada Company, com um HomeController na pasta do controlador padrão para a área, com o nome de classe MyCompany.MyProject.WebMvc.Areas.Company.Controllers.HomeController.
O método RegisterArea no arquivo CompanyAreaRegistration se parece com:
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Company_default",
"Company/{controller}/{action}/{id}",
new { area = "Company", action = "Index", id = UrlParameter.Optional }
);
}
Isso tudo está levando ao erro que destaquei no início desse post. Estou lutando para encontrar uma solução de vários outros posts, sem SORTE .
É possível ter um HomeController na pasta de controladores padrão e outro em CADA área? Em caso afirmativo, preciso fazer (presumindo que sim) alterações em meu arquivo de configuração para que isso funcione?
Qualquer ajuda seria muito apreciada!