MVC中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是不执行的。
(5)什么情况用View?服务器端产生数据,想让一个View去显示的;
(6)什么情况用Redirect?让浏览器去访问另外一个页面的时候。
本文详细对比了MVC框架中Redirect和ReturnView的功能差异。Redirect使浏览器重定向,涉及两次请求,无法保留ViewBag信息;ReturnView则直接渲染视图返回给浏览器,仅一次请求,能保持ViewBag数据。适用于不同场景:Redirect用于跳转页面,ReturnView用于展示服务器生成的数据。
485

被折叠的 条评论
为什么被折叠?



