天天看点

Asp.net MVC中的ViewData与ViewBag

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,如需转载请自行联系原作者