У меня есть IQueryable<Person>
, который создается на основе некоторых входных параметров (сортировка и фильтр).Применить IQueryable к другому IQueryable/DbContext
Можно ли применить этот IQueryable<T>
к DbSet<T>
У меня есть в DbContext
?
Например:
// create the query from some parameters
IQueryable<Person> query = CreateQuery(parameters);
// apply the query somehow to an existing IQueryable/DbSet
AppContext db = new AppContext();
IEnumerable<Person> result = db.People.ApplyQuery(query).ToList();
Не должно быть 'Люди' на самом деле' Лицо'? Действительно ли они разные типы? –
'db.People' имеет тип' DbSet '. IQuerable и DbSet имеют один и тот же тип –
Catalin
Можете ли вы изменить метод CreateQuery? У меня была аналогичная проблема, но она была решена путем создания базового запроса ('Select (x => x)') и добавления фильтра и сортировки на основе предоставленных «параметров» (если они есть). –