Powiedzmy mamy zbiór Osoba obiektówFiltrowanie kolekcji z LINQ
class Person
{
public string PersonName {get;set;}
public string PersonAddress {get;set;}
}
A gdzieś w kodzie zdefiniowano kolekcji
List<Person> pesonsList = new List<Person>();
Musimy mieć filtr, który trzeba filtrować kolekcję i zwróć wynik użytkownikowi końcowemu. Powiedzmy, że mamy zbiór filtrem typu obiektów
class Filter
{
public string FieldName {get;set;}
public string FilterString {get;set;}
}
A gdzieś w kodzie mamy
List<Filter> userFilters = new List<Filter>();
Więc musimy filtrować zawartości kolekcji personsList przez filtry zdefiniowane w zbiorze userFilters. Gdzie Filter.FieldName == "PersonName" || Filter.FieldName == "PersonAddress". Jak mogę to zrobić z LINQ w fajny sposób? Rozwiązania takie jak switch/case czy mogą być, jak mi się zdawało, metodą rozszerzającą na peopleList, która określa z FiledName właściwość osoby, którą należy zbadać, są znane. Coś innego ? Coś trudnego :) Dziękuję.
Czy używasz LINQ lub LinqToSql w pamięci? – JustLoren
To jest LINQ w pamięci. Muszę wysłać zapytanie do zestawu obiektów zdefiniowanych w kolekcji za pomocą filtrów zdefiniowanych w innym zbiorze. Nie ma żadnej interakcji z DB. – Tigran