ASP.NET перенаправление в базовом контроллере - PullRequest
5 голосов
/ 28 мая 2009

Я создал базовый контроллер, который переопределяет Initialize, устанавливает cookie и сохраняет некоторые данные в БД. Здесь я также должен проверить, установлен ли cookie и не перенаправлен ли он на страницу ошибки.

Пользователи этого сайта приходят из магазина на другом сайте, который передает мне идентификатор магазина, и я установил его в файле cookie. Мне нужно убедиться, что ID хранится и, если нет, передать их по ошибке или обратно, чтобы выбрать магазин.

У меня проблемы с перенаправлением или отображением этой ошибки в базовом контроллере. Я даже попробовал конструктор контроллера. Ниже приведен код, который я пытаюсь переопределить в Initialize, но ControllerContext в данный момент не имеет значения?

        if (StoreID == null)
        {
            View("StoreError").ExecuteResult(ControllerContext);
            return;
        }

Ответы [ 3 ]

6 голосов
/ 28 мая 2009

следующие сделали свое дело ...

requestContext.HttpContext.Response.Redirect("/home/storeError");
4 голосов
/ 29 мая 2009

Я бы порекомендовал создать действие, которое будет проверять cookie в методе OnActionExecuting и перенаправлять на правильный метод действия.

Очистить Объяснение: MVC - Перенаправление внутри Конструктора

2 голосов
/ 28 мая 2009

правильный путь, я думаю, будет

  Return RedirectToAction("StoreError","Home");

нет

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