EF中反射不确定类型。

最近在大神的教导下,学习EF的框架,这个东西确实简化了MVC框架的工作量,让程序员把精力放到业务上。

   

   public dynamic Page(int PageIndex, int PageSize)
        {       
          var aa = acdb.Users.OrderBy(user => user.UserId).Skip((PageIndex - 1) * PageSize).Take(PageSize).Select(use => new
          {
              ID = use.UserId,
              姓名 = use.UserName,
              日期 = use.RegDate
          }).ToList();
             
                return aa;
        }

       

将EF中的业务逻辑封装,返回一个未知的类型,可以用(objec[所有类型的父类型] 或者上面的  dynamic )。

不过这样有个问题:获取到这样的类型,如果是直接绑定数据源没有问题,但如果你要for或者foreach,他就无法认识该类型,这里就用到了反射机制。

using System.Reflection;

            foreach (var item in Page(2, 5))
            {
                Type type = item.GetType();
                var pi = type.GetProperty("姓名");
                MessageBox.Show(pi.GetValue(item));
            }


通过这样反射出OJBICE类型的属性获取相应的值。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值