Ответ 1
RedirectToAction
позволяет вам создать URL-адрес перенаправления для конкретного действия/контроллера в вашем приложении, то есть он будет использовать таблицу маршрутов для создания правильного URL-адреса.
Redirect
требует, чтобы вы указали полный URL-адрес для перенаправления.
Если у вас есть действие Index
на контроллере Home
с параметром Id
:
-
Вы можете использовать
RedirectToAction("Index", "Home", new { id = 5 })
, который будет генерировать URL-адрес для вас на основе вашей таблицы маршрутов. -
Вы можете использовать
Redirect
, но должны сами создать URL-адрес, поэтому вы передаетеRedirect("/Home/Index/5")
или, тем не менее, используете свою таблицу маршрутов. -
Вы не можете перенаправить на
google.com
(внешний URL) с помощьюRedirectToAction
, вы должны использоватьRedirect
.
RedirectToAction
предназначен для выполнения 302 перенаправлений в вашем приложении и дает вам более простой способ работы с вашей таблицей маршрутов.
Redirect
предназначен для 302 перенаправления ко всем остальным, в частности внешним URL-адресам, но вы все равно можете перенаправлять в своем приложении, вам просто нужно самостоятельно создать URL-адреса.
Рекомендации: Используйте RedirectToAction
для любых действий с вашими действиями/контроллерами приложений. Если вы используете Redirect
и укажите URL-адрес, вам нужно будет изменить эти URL-адреса вручную, когда изменится таблица маршрутов.