ViewData
ViewBag
它是Key/Value字典集合
从Asp.net MVC 1 就有了
ASP.NET MVC3 才有
基于Asp.net 3.5 framework
基于Asp.net 4.0与.net framework
ViewData比ViewBag快
ViewBag比ViewData慢
在ViewPage中查询数据时需要转换合适的类型
在ViewPage中查询数据时不需要类型转换
有一些类型转换代码
可读性更好
在Controller中使用ViewData:
对应UsingViewData View的cshtml:
然后是ViewBag:
对应View UsingViewBag 的cshtml的ViewBag:
后面是在Controller中使用ViewBag:
在UsingViewBagInControlAndViewDataInView.cshtml中使用ViewData来取值:
反过来是这样的:
在UsingViewDataInControlAndViewBagInView.cshtml 的View中使用ViewBag来取值:
这样对比看上去会比较清楚一些。在源代码中的ViewBag是这样的属性:
ViewData是:
具体细节在这儿不深入了,这里只是抛砖引玉。希望对您Asp.net MVC开发有帮助。
本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2013/04/30/3051757.html,如需转载请自行联系原作者