gpt4 book ai didi

asp.net-mvc - ASP.NET MVC 中的 Redirect 和 RedirectToAction 有什么区别?

转载 作者:行者123 更新时间:2023-12-03 06:05:28 24 4
gpt4 key购买 nike

除了返回类型之外,RedirectRedirectToAction 之间还有什么区别?我们什么时候使用每一个?对任何现实生活场景的解释都会对我有很大帮助。

我正在查看Confusion between Redirect and RedirectToAction ,但是,对我来说,答案似乎更具体地涉及处理 id 参数并返回正确的 View 。

最佳答案

RedirectToAction 允许您构建指向应用程序中特定操作/ Controller 的重定向 URL,也就是说,它将使用路由表生成正确的 URL。

重定向 要求您提供要重定向到的完整 URL。

如果您在 Controller Home 上有一个带有参数 Id 的操作 Index:

  1. 您可以使用 RedirectToAction("Index", "Home", new { id = 5 }),它将根据您的路由表生成 URL。

  2. 您可以使用 Redirect 但必须自己构造 URL,因此您可以传递 Redirect("/Home/Index/5") 或路由表有效。

  3. 您无法使用 RedirectToAction 重定向到 google.com(外部网址),必须使用 Redirect

RedirectToAction 用于在应用程序中执行 302 重定向,并为您提供更轻松的方式来使用路由表。

Redirect 用于执行 302 重定向到其他所有内容,特别是外部 URL,但您仍然可以在应用程序内重定向,只需自己构建 URL。

最佳实践:使用RedirectToAction来处理与应用程序操作/ Controller 有关的任何事情。如果您使用重定向并提供 URL,则需要在路由表更改时显式修改这些 URL。

关于asp.net-mvc - ASP.NET MVC 中的 Redirect 和 RedirectToAction 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12198909/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com