TempData、ViewData和ViewBag异同
2012-04-26 16:18
337 查看
TempData、ViewData和ViewBag异同:
TempData ViewData ViewBag都可以用来保存数据。
它们之间的区别如下:
TempData:保存在Session中,Controller每次执行请求的时候,会从Session中先获取TempData,而后清除Session,获取完TempData数据,虽然保存在内部字典对象中,但是其集合中的每个条目访问一次后就从字典表中删除。具体代码层面,TempData获取过程是通过SessionStateTempDataProvider.LoadTempData方法从ControllerContext的Session中读取数据,而后清除Session,故TempData只能跨Controller传递一次。
ViewData:生命周期和View相同,仅对当前View有效。
ViewBag:和ViewData生命周期相同,也是对但前View有效,不同的是ViewBag的类型不再是字典的键值对结构,而是dynamic动态类型,属于MVC3里面新增的部分。
TempData ViewData ViewBag都可以用来保存数据。
它们之间的区别如下:
TempData:保存在Session中,Controller每次执行请求的时候,会从Session中先获取TempData,而后清除Session,获取完TempData数据,虽然保存在内部字典对象中,但是其集合中的每个条目访问一次后就从字典表中删除。具体代码层面,TempData获取过程是通过SessionStateTempDataProvider.LoadTempData方法从ControllerContext的Session中读取数据,而后清除Session,故TempData只能跨Controller传递一次。
ViewData:生命周期和View相同,仅对当前View有效。
ViewBag:和ViewData生命周期相同,也是对但前View有效,不同的是ViewBag的类型不再是字典的键值对结构,而是dynamic动态类型,属于MVC3里面新增的部分。
相关文章推荐
- TempData、ViewData和ViewBag异同
- TempData、ViewData和ViewBag异同
- TempData、ViewData和ViewBag异同
- .NET Mvc中ViewBag、ViewData、TempData如何使用
- ViewData/TempData/ViewBag 差異性
- MVC到底使用哪种方式传递Model,在ViewData、ViewBag、PartialView、TempData、ViewModel、Tuple之间取舍
- 【傻傻分不清楚】 二 ViewBag、ViewData、TempData
- 关于ViewData,ViewBag,TempData三者学习记录!
- MVC中的ViewData与ViewBag与TempData的区别
- 浅谈 MVC中的ViewData、ViewBag和TempData
- MVC3中 ViewBag、ViewData和TempData的使用和区别(转载)
- ASP.NET MVC程序传值方式:ViewData,ViewBag,TempData和Session
- MVC中ViewBag、ViewData和TempData 的区别与联系
- MVC3中 ViewBag、ViewData和TempData的使用和区别
- 关于TempData 、ViewBag和ViewData
- MVC3中 ViewBag、ViewData和TempData的使用和区别
- MVC3中viewdata,tempdata,viewbag总结
- ViewBag、ViewData、TempData区别
- 【MVC4 之 ViewData ViewBag TempData】
- viewbag viewdata tempdata 区别以及跨controller 传值