public static IEnumerable <Meeting> Filter(this IEnumerable <Meeting> meetings, NameValueCollection query) { query = query ?? new NameValueCollection(); var filter = new MeetingsFilter(query); meetings = Filter(meetings, filter.Tags, x => x.Tags.Select(y => y.Name)); meetings = Filter(meetings, filter.Organizers, x => x.Organizers.Select(y => y.Name)); meetings = Filter(meetings, filter.Locations, x => new[] { x.City.Name }); return(meetings); }
public static IEnumerable<Meeting> Filter(this IEnumerable<Meeting> meetings, NameValueCollection query) { query = query ?? new NameValueCollection(); var filter = new MeetingsFilter(query); meetings = Filter(meetings, filter.Tags, x => x.Tags.Select(y=>y.Name)); meetings = Filter(meetings, filter.Organizers, x => x.Organizers.Select(y => y.Name)); meetings = Filter(meetings, filter.Locations, x => new[]{x.City.Name}); return meetings; }