大家好。自己写了一个方法public IQueryable<TEntity> Get(Expression<Func<TEntity, bool>> expression) 调用Get( u => u.name == "test"); 现在我有好几个条件,如 username,date,type。。并且当条件为空时不作为查询条件这个时候应该如何拼接这个Expression, 如何调用Get(expression);
2 回答
慕运维8079593
TA贡献1876条经验 获得超5个赞
这个表达式如果不生成SQL,那简单:
Get(u=>(u.name != null && u.name == "test") &&(或者||) (u.type != nul && u.type == "type"))
假如,想变成SQL 。。。。那么就难度大点,需要自己构造一个Expression,因为上面我写的表达式可能在生成SQL的时候有问题。
参考:关于Expression<Func<T, TResult>>
- 2 回答
- 0 关注
- 580 浏览
添加回答
举报
0/150
提交
取消