无法构造LINQ语句

时间:2012-01-06 18:41:39

标签: c# linq

我有一个元素列表

List<int> StatusIDs

我有一个查询

IQuerable<xxx> query

我想创建如下语句:

query = query.Where(p=>p.StatusID == StatusID_1 || p.StatusID == StatusID_2 || ... p.StatusID == StatusID_n)

其中StatusID_1,StatusID_2 ... StatusID_n - StatusID的元素。怎么做?

2 个答案:

答案 0 :(得分:9)

也许你想要这个?

query.Where(p => StatusIDs.Contains(p.StatusID))

答案 1 :(得分:3)

您可以执行inner join

var result = from p in query
             join id in StatusIDs on p.StatusID equals id
             select p;