C# Dynamique Linq Variable de la clause where

Je suis Scott Gu de l'article à créer une dynamique de LINQ
http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx

Il a donné un exemple:

Expression<Func<Customer, bool>> e1 = 
    DynamicExpression.ParseLambda<Customer, bool>("City = \"London\"");  
Expression<Func<Customer, bool>> e2 =
    DynamicExpression.ParseLambda<Customer, bool>("Orders.Count >= 10");  
IQueryable<Customer> query =
    db.Customers.Where("@0(it) and @1(it)", e1, e2);  

Cela fonctionne bien dans mon cas. Toutefois, j'ai un nombre inconnu d'où l'une des clauses, qui est décidé au moment de l'exécution.

Quelqu'un peut-il me dire comment créer un générique clause where, comme

Where("@0(it) and @1(it) and... @n(it)", e1, e2, ... en);

Grâce

Pourquoi ne pas essayer avec quelque chose comme db.Clients.Où c => c.Ordre.Count > someVariable1 && c.Ordre.Le comte < someVariable2 );

OriginalL'auteur gunnerz | 2012-06-25