Trochę utknąłem na tym. Zasadniczo mam metodę, która chcę zwrócić wyrażenie predykatu, które można użyć jako warunek Where. Myślę, że to, co muszę zrobić, jest podobne do tego: http://msdn.microsoft.com/en-us/library/bb882637.aspx, ale trochę utknąłem, co muszę zrobić.Jak dynamicznie budować i zwracać predykat linq na podstawie danych wprowadzanych przez użytkownika
Metoda:
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 ??
}
Przykład użycia:
var predicate = GetSearchPreducate(a,b,c,d);
var x = Conferences.All().Where(predicate);
muszę to oddzielenie tak, że mogę przekazać moje orzeczenie w moim repozytorium i używać go w innych miejscach.
Miło, robi dokładnie to, co chcę :) –