/ / asp.net página padrão da área mvc - asp.net-mvc, asp.net-mvc-areas

página padrão da área asp.net mvc - asp.net-mvc, asp.net-mvc-areas

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 № 1

Tente 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.