Je tente de créer une clause where dynamique à l'aide de l'API d'expression standard. Les expressions ci-dessus seront ultimement ajoutées à une clause where.Expression.OrElse, création dynamique d'une condition
var query = (
from p in Parties
orderby p.PartyId
orderby p.FullName
select p
).AsQueryable();
Expression<Func<Party, bool>> @fn = (p) => SqlMethods.Like(p.FullName, "%smith%") || SqlMethods.Like(p.Person.FirstName, "%smith%");
Expression<Func<Party, bool>> @sn = (p) => SqlMethods.Like(p.Person.FirstName, words[0]);
ParameterExpression pe = Expression.Parameter(typeof(Party), "p");
Expression orelse = Expression.OrElse(
Expression.Lambda(@fn, pe),
Expression.Lambda(@sn, pe)
);
Je dois ajouter un tas de 'j'aime'.
Comment faire?
je reçois InvalidOperationException l'opérateur OrElse J'ai également essayé Expression.Or
Merci
Cordialement
Craig.