Isa*_*ger 1 c# linq predicatebuilder
假设您正在使用两个布尔属性A和B搜索某个对象.
如果你有两个linq查询怎么办:
IQueryable<ObjectType> query = getIQueryableSomehow()
query.Where(x => x.A);
IQueryable<ObjectType> query2 = getIQueryableSomehow()
query2.Where(x => x.B);
Run Code Online (Sandbox Code Playgroud)
如何将这些查询加在一起,以便它们与此相同?:
IQueryable<ObjectType> query3 = getIQueryableSomehow()
query3.Where(x => x.A || x.B)
Run Code Online (Sandbox Code Playgroud)
我想使用query3 = query.Union(query2),但遗憾的是我的Linq提供者联盟不受支持.
我通过链接where子句来分割x => xA && xB的情况.这就是我的意思:
IQueryable<ObjectType> query = getIQueryableSomehow();
query = query.Where(x => x.A);
query = query.Where(x => x.B);
Run Code Online (Sandbox Code Playgroud)
这个或案例是否有类似的解决方法?
谢谢,
艾萨克
IQueryable<ObjectType> query = getIQueryableSomehow();
var predicate = PredicateBuilder.False<ObjectType>();
predicate = predicate.Or(x => x.A);
predicate = predicate.Or(x => x.B);
var list = query.Where(predicate).ToList();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
558 次 |
最近记录: |