Какова длительность кэширования по умолчанию EF plus?
Я использую метод FromCache() всякий раз, когда мне нужно получить данные из кэша.
Я не установил никакой политики кэширования по умолчанию и по умолчанию использую EF плюс.
Какова длительность кэша по умолчанию? одна минута? или бесконечный?
2 ответа
Отказ от ответственности: я владелец проекта http://entityframework-plus.net/
Entity Framework Plus по умолчанию использует MemoryCache. Мы ничего не отменяем. Смотрите EF+ Memory Cache
Так что вопрос должен быть больше What is the default .NET Memory Cache duration?
Глядя на MSDN, кажется, что если ничего не предоставлено, по умолчанию InfiniteAbsoluteExpiration
Если информация о выселении или истечении срока действия не предоставлена, по умолчанию используется InfiniteAbsoluteExpiration, что означает, что срок действия элементов в кэше не истекает по абсолютному времени. Вместо этого предметы истекают только тогда, когда есть давление памяти. Рекомендуется всегда явно указывать абсолютное или промежуточное истечение срока действия. В этом пошаговом руководстве вы используете абсолютное истечение 10 секунд.
См. ответ выше, но вы можете использовать его для установки политики по умолчанию:
var options = new MemoryCacheEntryOptions() { SlidingExpiration = TimeSpan.FromHours(2)};
QueryCacheManager.DefaultMemoryCacheEntryOptions = options;
Источник: https://entityframework-plus.net/ef-core-query-cache#expiration