ASP.NET MVC 2 - избегание установки параметра returnUrl частичным представлением Ajax ActionLink - PullRequest
0 голосов
/ 20 октября 2010

В сценарии мастер / подробности я использую Edit ActionLink, который извлекает представление частичных подробностей через вызов jQuery Ajax; довольно типично, верно?

Проблема, с которой я столкнулся, заключается в том, что у пользователя истекает токен авторизации, и он нажимает кнопку «Изменить ActionLink». Параметр returnUrl действия LogOn устанавливается ActionLink, который возвращает частичное представление, и после успешной аутентификации отображается большой белый экран только с частичным представлением.

На самом деле это относится к любой из множества ссылок действий Ajax, которые возвращают частичные представления - каждый раз, когда одна из них запускает перенаправление на действие LogOn из-за истекшего билета аутентификации.

        [HttpPost]
        public ActionResult LogOn(LogOnModel model, string returnUrl)
        {
            if (ModelState.IsValid)
            {
                if (MembershipService.ValidateUser(model.UserName, model.Password))
                {
                    FormsService.SignIn(model.UserName, model.RememberMe);
                    if (!String.IsNullOrEmpty(returnUrl))
                    {
                        return Redirect(returnUrl);
                    }
                     .....

Конечно, проблема return Redirect(returnUrl); здесь.

Мне интересно, как другие люди справляются с этим сценарием.

Спасибо.

1 Ответ

0 голосов
/ 20 октября 2010

Я использую jQuery Idle Timout для этого сценария.Я просто возвращаю экран входа в систему при частичном просмотре, когда пользователь выходит из системы.Просто установите значение тайм-аута на то же значение, что и время выхода из сеанса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...