Подтвердить что ты не робот

RedirectToAction не работает вообще

В AccountController, в конце метода у меня есть:

RedirectToAction("EveryView", "Account");

В том же файле контроллера у меня есть этот метод:

public ActionResult EveryView()
    {
        return View();
    }

Но этот метод никогда не вызывается. У меня есть точка останова на '{', и она никогда не попадает!

4b9b3361

Ответ 1

Humm... трудно увидеть (или сказать), в чем проблема, поскольку код кажется довольно тривиальным.

Возможно, небольшая отладка может помочь! Попробуйте создать новый TestController внутри индекса по умолчанию() ActionResult:

return RedirectToAction("EveryView", "Test");

Затем создайте метод EveryView() ActionResult и установите точку прерывания.

public ActionResult EveryView()
{
    return View();
}

Если вы попробуете http://localhost/Test/Index, что произойдет? Это работает?

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

В качестве альтернативы вы можете добавить в свой Global.asax этот метод:

protected void Application_Error(object sender, EventArgs e)
{
    Exception ex = Server.GetLastError();
}

И установите точку прерывания в строке, чтобы поймать любые неизвестные ошибки.

Ответ 2

вы положили 'return', иначе он не будет перенаправлен.

return RedirectToAction("EveryView", "Account");

Ответ 3

У меня тоже была эта проблема в моем недавнем проекте. Я разрешил его, добавив [AllowAnonymous] в перенаправленное действие, потому что контроллер украшен атрибутом [Authorize], и ​​в этот момент пользователь не вошел в систему. Надеюсь, что это помощь.

Ответ 4

У меня была аналогичная проблема. Я только что удалил атрибут post [HttpPost] из функции туда, куда я перенаправил.

Ответ 5

У меня была эта проблема, и потому, что добавленный пользовательский фильтр MustBeLoggedIn, который я добавил, не позволял перенаправить этот метод, аналогичный user2192287.

Это означало, что я фильтр перенаправлял меня обратно к действию, с которого я начинал.

Возможно, это была проблема petko_stankoski, как это было в контроллере Account.

Ответ 6

Комментировать все загруженные скрипты и повторить попытку. some script Вмешательство этого объекта