概述
★ViewData和ViewBag:生命周期相同,仅对当前View有效,不同的是ViewBag的类型不是字典的键值对结构,而是dynamic动态类型。
ViewData | ViewBag |
Key/Value字典集合 | dynamic类型对象 |
从ASP.NET MVC1就有了 | ASP.NET MVC3才有 |
基于ASP.NET 3.5 framework | 基于ASP.NET 4.0 framework |
ViewData比ViewBag快 | ViewBag比ViewData慢 |
在ViewData中查询数据时需要转换合适的类型 | 在ViewBag中查询数据时不需要类型转换 |
有一些类型转换代码 | 可读性更好 |
●ViewData
ViewData["Title"]="ViewData";
●ViewBag
ViewBag.Title="ViewBag";
★TempData
TempData保存在Session中,Controller每次执行请求的时候,会从Session中先获取TempData,而后清除Session,获取完TempData数据,虽然保存在内部字典对象中,但是其集合中的每个条目访问一次后就从字典中删除,所以TempData只能跨页传递一次。
!如果我们想读取TempData的值但是又不让它被删除,可以使用TempData.Peek("Key")方法。如果想再保持一次TempData里面的值,可以使用TempData.Keep("Key")。
转载于:https://www.cnblogs.com/sydeveloper/p/3317283.html
最后
以上就是醉熏白昼为你收集整理的asp.net mvc之TempData、ViewData、ViewBag的全部内容,希望文章能够帮你解决asp.net mvc之TempData、ViewData、ViewBag所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复