Какова длительность кэширования по умолчанию 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

Другие вопросы по тегам