Redirect和Return View 的区别
1、 Redirect是让浏览器重定向到新的地址;Return View是让服务器把指定的cshtml的内容运行渲染后给到浏览器。
2、 Redirect浏览器和服务器之间发生了两次交互;Return View浏览器和服务器之间发生了1次交互。
3、 Redirect由于是两次请求,所以第一次设置的ViewBag等这些信息,在第二次是取不到;而View则是在同一个请求中,所以ViewBag信息可以取到。
4、如果用Redirect,则由于是新的对Controller/Action的请求,所以对应的Action会被执行到。如果用View,则是直接拿某个View去显示,对应的Action是不执行的。
什么情况用View?
服务器端产生数据,想让一个View去显示的;
什么情况用Redirect?
让浏览器去访问另外一个页面的时候。
RedirectToAction和Return View的区别
RedirectToAction()是让客户端重定向,是一个新的Http请求,所以无法读取ViewBag中的内容;
Return View()是一次服务器一次处理中的转移。
Redirect和RedirectToAction的区别
RedirectToAction是从一个Action调到另一个Action,在后台做跳转。
Response.Redirect是给返回前台返回应答,前台根据应答的url进行跳转。
一个是后台,一个是前台。