Eu tenho um site MVC 2 com uma área, digamos que o nome da área seja {Admin}
As áreas e o site funcionam bem.
O que estou tentando fazer é ter página padrão diferente para a área.
Quando eu estou chamando http://webSiteName funciona sem problemas
mas pelo http://webSiteName/Admin Estou recebendo o erro
O recurso não pode ser encontrado
Eu tentei as soluções de A ASP.NET MVC 2 RC 2 retorna um controlador específico de área quando nenhuma área é especificada mas sem sorte.
Eu também tentei
routes.MapRoute(
"Admin",
"{controller}/{action}/{id}",
new { controller = "AdminHome", action = "index" },
new[] { "Web.Areas.Admin.Controllers" }
);
e
routes.MapRoute(
"Admin",
"Admin",
new { controller = "AdminHome", action = "index" },
new string[] { "Web.Areas.Admin.Controllers" }
);
mas eu ainda estou recebendo O recurso não pode ser encontrado.
O que estou fazendo de errado?
Respostas:
14 para resposta № 1Tente isso. Certifique-se de que estará em /Areas/Admin/AdminAreaRegistration.cs
quando sua área é nomeada Admin
.
public override void RegisterArea(AreaRegistrationContext context)
{
context.MapRoute(
"Admin_default",
"Admin/{controller}/{action}/{id}",
new { controller = "AdminHome",action = "Index", id = "" }
);
}
Você não precisa adicionar nada ao seu Global.asax
.