Redirect
和RedirectToAction
除返回类型之外有什么区别? 我们什么时候使用每个?任何真实生活场景的解释都会对我有很大的帮助。ASP.NET MVC中的Redirect和RedirectToAction有什么区别?
我在看Confusion between Redirect and RedirectToAction,但对我来说,它看起来像答案更具体的处理id
参数和返回正确的看法。
Redirect
和RedirectToAction
除返回类型之外有什么区别? 我们什么时候使用每个?任何真实生活场景的解释都会对我有很大的帮助。ASP.NET MVC中的Redirect和RedirectToAction有什么区别?
我在看Confusion between Redirect and RedirectToAction,但对我来说,它看起来像答案更具体的处理id
参数和返回正确的看法。
RedirectToAction
让你构建一个重定向URL以在您的应用程序的特定动作/控制器,也就是说,它会使用的路由表来生成正确的URL。
Redirect
要求您提供完整的URL以重定向到。
如果您对控制器Home
动作Index
与参数Id
:
可以使用RedirectToAction("Index", "Home", new { id = 5 })
为您根据自己的路由表,这将产生的URL。
您可以使用Redirect
但必须自己构造URL,让你通过Redirect("/Home/Index/5")
或不管您的路由表的作品。
你不能重定向到使用RedirectToAction
google.com
(外部URL),您必须使用Redirect
。
RedirectToAction
意味着做302重定向你的应用程序中,并为您提供了一个更简单的方式与您的路由表的工作。
Redirect
是为了做302重定向到其他任何东西,特别是外部URL,但是你仍然可以在你的应用程序中重定向,你只需要自己构造URL。
最佳实践:使用RedirectToAction
处理与您的应用程序操作/控制器有关的任何事情。如果您使用Redirect
并提供网址,则需要在路由表更改时手动修改这些网址。
这意味着重定向还可以带你到完全不同的URL与RedirectToAction仅限于当前的应用程序。如果我错了,请纠正我。 –
@gmailuser - 你是对的。 – Omar
谢谢你,我的朋友。 –