为了账号安全,请及时绑定邮箱和手机立即绑定

反射查询实体条件

反射查询实体条件

C#
喵喔喔 2018-12-13 05:02:06
加入有N个实体类,每个实体类操作都会都有一个查询方法,每个查询方法都会判断每个属性是否为空,如果不为空则作为查询条件,要一个个手动判断是在太麻烦,有没有好的方法,比如利用反射判断,或是还有什么更好的方法        if (!string.IsNullOrEmpty(model.ID))             {                 _dal.Where(x => x.ID.StartsWith(model.ID));             }            if (!string.IsNullOrEmpty(model.Name))             {                 _dal.Where(x => x.Name.StartsWith(model.Name));             }            if (!string.IsNullOrEmpty(model.Age))             {                 _dal.Where(x => x.Age.StartsWith(model.Age));             }            if (!string.IsNullOrEmpty(model.Hobby))             {                 _dal.Where(x => x.Hobby.StartsWith(model.Hobby));             }
查看完整描述

2 回答

?
PIPIONE

TA贡献1829条经验 获得超9个赞

从你代码看来是一个实体类多个属性。貌似可以利用反射遍历实体所有属性然后判断赋值

查看完整回答
反对 回复 2018-12-18
?
达令说

TA贡献1821条经验 获得超6个赞

var type = typeof(XX);            foreach (var s in type.GetProperties())
            {               
                if(s.GetValue(new  XX(),null) != null)
                {
            
                }
            }

很简单的一个反射就搞定了。


查看完整回答
反对 回复 2018-12-18
  • 2 回答
  • 0 关注
  • 498 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信