我需要使用或运算符构建动态linq查询。我见过PredicateBuilder但是在C#中,我的项目在VB中。基本上我需要构建一个类似于此的WHERE子句:
Where((this = 1 AND that = 2) OR (this = 1 AND that = 4) OR (this = 2 AND that = 4))
但问题是数字必须在运行时动态确定,并使用循环添加,如
for each item in myItems
query = query.OR (this = item.a AND this = item.b)
next
我怎么能这样做呢?
答案 0 :(得分:1)
LinqKit.dll正常运行,现在使用PredicateBuilder甚至使用我的VB项目,效果非常好!
对于其他需要此功能的人,请参阅http://rocksthoughts.com/blog/archive/2008/04/10/linq-to-sql-dynamic-queries-3-ands--ors-together.aspx,关于如何执行此操作的非常好的文章。
答案 1 :(得分:0)
您是否查看了LINQ Dynamic Query Library?