如何动态构建LINQ

Jab*_*ezz 8 linq dynamic operators

我有一个场景,我有自定义配置列名称,关联运算符,如<> =之间等,然后一个值相关联.

我正在尝试确定是否可以使用动态(字符串)where子句构建LINQ查询?

我注意到Predicate.OR Preditcate.AND的东西,但这不是我所说的.

有什么建议?

Mar*_*ell 9

如果你正在谈论一个字符串 Where子句(而不是自己构建表达式等) - 那么动态LINQ库(在3.5个样本中,IIRC)就足够了.

请注意,以下示例适用于数据库使用情况; 但是你可以通过调用.AsQueryable()你的内存数据将它与LINQ-to-Objects一起使用.

alt text http://www.scottgu.com/blogposts/dynquery/step2.png


Ale*_*lex 8

实际上,Microsoft(System.Linq.Dynamic)中有一个特定的库,它附带了支持此功能的C#VS2008示例.从这里获取它(Microsoft下载)

该库包含在上面下载示例的\ LinqSamples\DynamicQuery目录中.

有关广泛使用示例,请查看此页面:http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx