RedirectToAction не работает вообще
В AccountController, в конце метода у меня есть:
RedirectToAction("EveryView", "Account");
В том же файле контроллера у меня есть этот метод:
public ActionResult EveryView()
{
return View();
}
Но этот метод никогда не вызывается. У меня есть точка останова на '{', и она никогда не попадает!
Ответы
Ответ 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 Вмешательство этого объекта