asp.net mvc: передать информацию между двумя контроллерами в представление - PullRequest
0 голосов
/ 08 января 2010

надеюсь, я смогу объяснить себя ... У меня есть контроль входа на главной странице. когда вы нажимаете кнопку входа в систему, вы переходите к методу входа в систему accountcontroller, который проверяет ваши учетные данные. Неважно, нормально это или нет, вы будете перенаправлены на домашнюю страницу с перенаправлением («home», «index»). но в случае неудачной попытки входа я хочу показать сообщение пользователю. поэтому я попытался установить viewdata в методе входа в систему (viewdata ["logon"] = "failed"), а затем проверить на главной странице, присутствовали ли эти viewdata, и, если да, отобразить диапазон с некоторым текстом. но, как я понимаю, viewdata не сохраняется с методом перенаправления к действию.

Каков наилучший способ убедиться, что мой метод входа в систему может каким-то образом уведомить мою мастер-страницу о том, что вход не выполнен?

Michel

Ответы [ 2 ]

3 голосов
/ 08 января 2010

Если я правильно прочитал ваш вопрос, ваша проблема в том, что вам нужно установить значение в вашем действии, которое должно быть доступно после RedirectToAction. Вам необходимо установить ключ в Tempdata.

TempData["MessageToUser"] = "I dont let you in dude!"

TempData все еще доступна после одного перенаправления.

1 голос
/ 08 января 2010

Выезд MvcContrib . Queen3 где-то упоминал, что у них есть лекарство от этого
(передача информации между перенаправлениями).

Но было бы лучше создать отдельное представление для аутентификации. Тогда проблема просто исчезнет.

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