запрос кеша с использованием расширения entityframework-plus - PullRequest
0 голосов
/ 26 июня 2018

Я хочу использовать расширение entityframework-plus для кэширования некоторых моих запросов, но он не имеет никакой возможности выбрать определенные элементы и кэшировать их, так как я читаю его документ, он кэширует все столбцы следующим образом:

ctx.Countries.Where(x => x.IsActive).FromCache()

но у меня есть что-то вроде этого:

db.tbl_Brand_To_Product.Where(x => x.tbl_BrandID == id).Select(x => x.tbl_ProductID)

Я хочу выбрать только tbl_ProductID Идентификаторы не Выбрать *

кто-нибудь работает с этим расширением? есть ли вариант сделать это? или даже есть ли другое расширение, которое может кэшировать мой запрос?

Ответы [ 2 ]

0 голосов
/ 01 июля 2018

Это ответ его разработчика:

This is the response of its developer

после некоторого поиска я нашел HttpContext.Cache метод для кэширования моих результатов.

0 голосов
/ 26 июня 2018

FromCache() метод может использоваться только для IQueryable<TEntity> объектов. Поскольку ваша инструкция .Select(x => x.tbl_ProductID) возвращает IQueryable<int> (или любой другой тип tbl_ProductID), вы не сможете использовать метод расширения.

Вы можете скачать весь исходный код с GitHub и посмотреть файл класса CacheExtensions.cs

...