можно ли показывать время истечения кеша для пользователя с помощью кэширования памяти в webapi2 [duplicate]

2 ответа

Поскольку вы устанавливаете скользящее окончание, не всегда ли это 10 минут с момента, когда вы обращались к нему? если объект имеет значение NULL, кэш-запись истек, а если нет, то срок действия (в приведенном выше коде) всегда равен 10 минутам с момента проверки?

Или у вас может быть базовый объект (все ваши кэшируемые объекты наследуются) с временем истечения срока действия в качестве свойства, которое устанавливается при добавлении кеша. Когда вы извлекаете объект, вы проверяете свойство, и у вас есть время истечения, чтобы рассчитать разницу. Просто мысль.

5
ответ дан coder net 23 August 2018 в 23:53
поделиться

Как сказано, сохраните значение срока действия после сохранения объекта в кеш памяти,

cache.Set(DataKey, DataToStore, policy);
cache.Set("MemCahceExpiry", DateAndTime.Now.AddHours(6), policy);

Затем прочитайте истечение срока действия с ключа истечения срока действия:

public static DateTime CheckCachedExpiry()
{
    DateTime MemCacheEXpirayDate = default(DateTime);
    MemCacheEXpirayDate = Convert.ToDateTime(MemoryCache.Default.Get("MemCahceExpiry"));
    return MemCacheEXpirayDate;
}
2
ответ дан wpcoder 23 August 2018 в 23:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: