Элемент кэша не сохраняется даже после вставки с использованием файловой зависимости
Я пытаюсь сохранить строку в кеше, используя Cache.Insert(). Когда я пытаюсь сохранить его с помощью файловой зависимости, после Cache.Insert () значение моего кэша все еще равно нулю. Пожалуйста, помогите мне с этой проблемой. Также этот код находится в функции Page_load. Ниже мой код для кеширования:
// add 30secs expiration timer
DateTime time = DateTime.Today.AddSeconds(30);
// add file dependency for a file
CacheDependency quesDependency = new CacheDependency(filePath, time);
Cache.Insert("question_of_the_day", html, quesDependency,time, Cache.NoSlidingExpiration);
// after this step i still get Cache["question_of_the_day"] = null instead of getting that html string.
1 ответ
Решение
Вы используете неверное абсолютное время истечения.
DateTime.Today - An object that is set to today's date, with the time component set to 00:00:00.
https://msdn.microsoft.com/en-us/library/system.datetime.today%28v=vs.110%29.aspx
+ Изменить
DateTime time = DateTime.Today.AddSeconds(30);
в
DateTime time = DateTime.Now.AddSeconds(30);