MVC 的 ViewData 和ViewBag 的使用方法带案例

本文介绍了ASP.NET MVC中ViewData和ViewBag的使用方法。ViewData用于以键值对方式存储数据,适合存取简单数据。ViewBag更灵活,可以存储任意类型的数据,包括集合和数组。在视图中,两者都能方便地获取数据。建议在处理数组和集合时使用ViewData,而对于没有实体类的情况,展示少量数据时,ViewBag是一个不错的选择。文中通过实例展示了如何在后台存储数据并如何在前台进行取用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ViewDate是以键值对的方式储存数据 里面的数据也是用键值对的范式取出来 在视图也上直接取出来便利就行
ViewBag 可以把它看做一个类 下面有很多公共字段 你可以随便起名字 。 到前台也是把你存的字段取出来 这个字段里你可以存集合 也可以存数组 也可以存一个类 是个object类型的

个人建议再存数组和集合的时候用ViewDate 的发难存案存 。在没有实体类的时候 展示一组数据 数据量不大的时候也可以用ViewBag 看案例

后台存数据
List list = new List();
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);

前台取数据

@{ List list = ViewData["list"] as List; }
  • @for (int i = 0; i < list.Count; i++) {
  • @list[i].Name
    @list[i].Age
               <div style="display:none"> @list[i].Tel</div>
    

@list[i].Address

  
}
  

ViewBag 则是

ViewBag.Address=“北京大兴”;
ViewBag.Age=17;
ViewBag.Name=“例会”
ViewBag.Tel=“13611111111111”;
//注* 上面的Address是没有智能提示的 但是你可以随便定义 和定义字段一样; 取得时候也是一样

前台取数据

  • ViewBag.Name
    @ViewBag.Age
  • @ViewBag.Tel
    @ViewBag.Address

    ViewBag 如果是集合的话

    List list = new List();
    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;

    前台 就变成这样了

    • @for (int i = 0; i < ViewBag.list.Count; i++) {
    • @ViewBag.list[i].Name
      @ViewBag.list[i].Age
    @ViewBag.list[i].Tel
    @ViewBag.list[i].Address
    }

    取数据这两种都可以用 具体要看你怎么用了 主要是灵活运用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值