Аутентификация - проблема области asv mvc при маршрутизации - PullRequest
0 голосов
/ 29 января 2012

У меня опять проблемы с маршрутизацией :) Когда я запускаю приложение, если пользователь не аутентифицирован, он перенаправляется на страницу входа.Я использую FormsAuthentication Страница входа находится в области учетной записи. Текущий URL-адрес

http://localhost:38962/Account/Home/Index?ReturnUrl=%2f

Настройка из веб-конфигурации

<authentication mode="Forms">
      <forms loginUrl="~/Account/Home/Index" timeout="2880" />
    </authentication>

Я попытался установить маршрут в классе AccountAreaRegistration

context.MapRoute("home_login",
                "",
                new { area = "Account", controller = "Home", action = "Index", ReturnUrl = UrlParameter.Optional });

и некоторые другие настройки не могут получить страницу входа, и URL остается только

http://localhost:38962

И у меня также есть маршрут в AccountAreaRegister

context.MapRoute(
                "Account_default",
                "Account/{controller}/{action}/{id}",
                new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );

Обновление1

   routes.MapRoute(
                    "Default",
                    "{controller}/{action}/{cityId}",
                    new { area = "MainArea", controller = "Home", action = "Index", cityId = UrlParameter.Optional },
                    new string[] { "MCN.WebUI.Areas.MainArea.Controllers" }).DataTokens.Add("area", "MainArea");

1 Ответ

1 голос
/ 29 января 2012

Исправьте вызов функции MapRoute, второй параметр должен быть

Account/{controller}/{action}

удалить область в третьем параметре

web.config

 <authorization>
      <deny users="?"/>
    </authorization>
...