ViewDate是以键值对的方式储存数据 里面的数据也是用键值对的范式取出来 在视图也上直接取出来便利就行
ViewBag 可以把它看做一个类 下面有很多公共字段 你可以随便起名字 。 到前台也是把你存的字段取出来 这个字段里你可以存集合 也可以存数组 也可以存一个类 是个object类型的
个人建议再存数组和集合的时候用ViewDate 的发难存案存 。在没有实体类的时候 展示一组数据 数据量不大的时候也可以用ViewBag 看案例
后台存数据
List<Account> list = new List<Account>();
for (int i = 0; i < 20; i++)
{
Account a = new Account();
a.Address = "北京大兴"+i;
a.Age = 17+i;
a.Name = "例会"+i;
a.Tel = "13611111111111"+i;
list.Add(a);
}
ViewData.Add("list", list);
前台取数据
<div>
@{
List<Account> list = ViewData["list"] as List<Account>;
}
<div id="UlClick">
<ul>
@for (int i = 0; i < list.Count; i++)
{
<li style="list-style:none">
@list[i].Name
<div style="display:none"> @list[i].Age</div>
<div style="display:none"> @list[i].Tel</div>
<div style="display:none"> @list[i].Address</div>
</li>
}
</ul>
</div>
</div>
ViewBag 则是
ViewBag.Address=“北京大兴”;
ViewBag.Age=17;
ViewBag.Name="例会"
ViewBag.Tel="13611111111111";
//注* 上面的Address是没有智能提示的 但是你可以随便定义 和定义字段一样; 取得时候也是一样
前台取数据
<li style="list-style:none">
ViewBag.Name
<div style="display:none"> @ViewBag.Age</div>
<div style="display:none"> @ViewBag.Tel</div>
<div style="display:none"> @ViewBag.Address</div>
</li>
ViewBag 如果是集合的话
List<Account> list = new List<Account>();
for (int i = 0; i < 20; i++)
{
Account a = new Account();
a.Address = "北京大兴"+i;
a.Age = 17+i;
a.Name = "例会"+i;
a.Tel = "13611111111111"+i;
list.Add(a);
}
ViewBag.list=list;
前台 就变成这样了
<div id="UlClick">
<ul>
@for (int i = 0; i < ViewBag.list.Count; i++)
{
<li style="list-style:none">
@ViewBag.list[i].Name
<div style="display:none"> @ViewBag.list[i].Age</div>
<div style="display:none"> @ViewBag.list[i].Tel</div>
<div style="display:none"> @ViewBag.list[i].Address</div>
</li>
}
</ul>
取数据这两种都可以用 具体要看你怎么用了 主要是灵活运用。