Cache.NoSlidingExpiration в ASP - когда он сбрасывается? - PullRequest
5 голосов
/ 29 сентября 2011

Я нашел ответ на аналогичный вопрос ( System.Web.Caching.Cache.NoSlidingExpiration в asp.net c # ) и перешел по ссылкам, но мне нужна более конкретная информация, которую я не могу найти.

NoSlidingExpiration не сбрасывается при «доступе» к нему.Но значит ли это, когда вы читаете это?Или также, когда вы пишете это?

Например, если я сделаю

Cache.Insert("mykey", 42, null, DateTime.Now.AddMinutes(20), System.Web.Caching.Cache.NoSlidingExpiration);

, а затем через 10 минут я сделаю:

Cache.Insert("mykey", 42, null, DateTime.Now.AddMinutes(20), System.Web.Caching.Cache.NoSlidingExpiration);

снова, будет лисрок действия будет скорректирован?

Спасибо!

1 Ответ

7 голосов
/ 29 сентября 2011

В соответствии с документом MSDN на Cache.NoSlidingExpiration

Когда используется, это поле устанавливает для параметра slideExpiration значение Поле TimeSpan.Zero, которое имеет постоянное значение ноль. Кэшированный Срок действия товара истекает в соответствии с параметром absoluteExpiration связанный с вызовом метода Insert или Add.

Это означает, что когда вы звоните Add или Insert, любое значение absoluteExpiration, указанное вами в этом вызове, будет использовано для истечения срока действия этого предмета. Итак, в вашем примере:

DateTime.Now.AddMinutes(20)

означает, что элемент будет сброшен через 20 минут.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...