Код: Выделить всё
IQueryableЯ понял, что у меня есть кеш утвержденных строк этих данных (т. е. там, где для строк флаг утверждения установлен в значение true).
Поэтому, чтобы быть более эффективным, я решил искать в кеше, а не в базе данных. В кеше хранятся те же записи, но они были преобразованы в DTO, поэтому это будет IQueryable.
Я пробовал это:
Код: Выделить всё
if (search.Approved == true)
{
IQueryable query = Cache.regetCachedMusics().AsQueryable();
}
else
{
IQueryable query = DBContext.Musics;
}
if (search.ID.HasValue)
query = query.Where(x => x.ID == search.ID); //There are more of these
Поэтому я попробовал:
Код: Выделить всё
IQueryable query;
if (search.Approved == true)
{
query = Cache.regetCachedMusics().AsQueryable();
}
else
{
query = DBContext.Musics;
}
if (search.ID.HasValue)
query = query.Where(x => x.ID == search.ID); //There are more of these
Дерево выражений может не содержать динамическую операцию
Возможно ли это как-то или это больше хлопот, чем пользы?
Подробнее здесь: https://stackoverflow.com/questions/790 ... rent-types
Мобильная версия