private object[] GetFilteredItems(bool useModelFilter, NameValueCollection collection, FakeItem[] items) { IQueryable<FakeItem> filteredItems; if (useModelFilter) { var modelFilter = GetModelFilter(collection); filteredItems = modelFilter.Filter(items); return modelFilter.Project(filteredItems).ToArray(); } return items.Filter(collection).Project(collection).ToArray(); }