Vous êtes un peu bloqué à ce sujet. Fondamentalement, j'ai une méthode que je veux retourner une expression de prédicat que je peux utiliser comme une condition Où. Je pense que ce que je dois faire est similaire à ceci: http://msdn.microsoft.com/en-us/library/bb882637.aspx mais je suis un peu coincé quant à ce que je dois faire.Comment construire et renvoyer dynamiquement un prédicat linq basé sur l'entrée de l'utilisateur
Méthode:
private static Expression<Func<Conference, bool>> GetSearchPredicate(string keyword, int? venueId, string month, int year)
{
if (!String.IsNullOrEmpty(keyword))
{
// Want the equivilent of .Where(x => (x.Title.Contains(keyword) || x.Description.Contains(keyword)));
}
if (venueId.HasValue)
{
// Some other predicate added...
}
return ??
}
Exemple d'utilisation:
var predicate = GetSearchPreducate(a,b,c,d);
var x = Conferences.All().Where(predicate);
j'ai besoin de cette séparation pour que je puisse passer mon prédicats dans mon dépôt et de l'utiliser dans d'autres endroits.
Nice, fait exactement ce que je veux :) –