1

我正在尝试做这样的事情,并得到编译器错误:

var query = from ev in dataConnection.event_info
                       where ev.isdeleted == 0
                       select ev;
foreach (System.Linq.Expressions.Expression whereCond in whereConditionsList)
{
    query.Where(whereCond);
}

错误:

'System.Linq.IQueryable<JsonApplicationServices.event_info>' does not contain a definition for 'Where' and the best extension method overload 'System.Linq.Enumerable.Where<TSource>(System.Collections.Generic.IEnumerable<TSource>, System.Func<TSource,int,bool>)' has some invalid arguments C:\Users\jzumbrum\perforce_jzumbrum_laptop\jzumbrum_laptop\SlamRun\WCFService\Events.cs 31 21 WCFService

如何创建where条件集合,然后foreach对其进行处理?

4

2 回答 2

0

你可以试试这个:

// query defined earlier...

foreach (System.Linq.Expressions.Expression whereCond in whereConditionsList)
{
    query = query.Where(whereCond);
}

但这Expression件事似乎很有趣……

于 2012-06-01T03:10:08.483 回答
0

所以我没有弄清楚如何在 where 条件上进行 foreach,但我确实知道如何附加到我的 where 条件,以及我在这里以不同的方式提出的问题: stackoverflow answer

要点是您需要添加 query.AsExpandable.Where()

于 2012-06-05T14:16:56.037 回答