ViewBag和ViewData的区别:
ViewBag:
它是dynamic类型对像,
ASP.NET MVC3 才有,
基于Asp.net 4.0与.net framework,
ViewBag比ViewData慢,
在ViewPage中查询数据时不需要类型转换,
ViewData:
它是Key/Value字典集合,
从Asp.net MVC 1 就有了,
基于Asp.net 3.5 framework,
ViewData比ViewBag快,
在ViewPage中查询数据时需要转换合适的类型,有一些类型转换代码
ViewBag的使用例子
1)控制器
public ActionResult Inde()
{
ViewBag.Name = "二哈";
ViewBag.Age = "20";
string[] abc= new string[] { "中国,I love China"};
ViewBag.abc= abc; //ViewData["abc "] = abc;
return View();
}
2)视图
<div >
用户名:<input type="text" id="Name" name="Name" value="@ViewBag.Name" />
年 龄: <input type="text" id="age" name="age" value=@ViewBag.Age />
@foreach (dynamic item in ViewBag.abc)
{
<p>@item</p>
}
</div>
运行如下图
ViewData:将ViewBag.Name替换为ViewData["Name"]就可以了