У меня есть приложение ASP.NET, которое требует кеширования вывода. Мне нужно сделать недействительными кэшированные элементы при изменении данных, возвращаемых веб-службой, поэтому простой продолжительности недостаточно.
Я немного читал о зависимостях кеша и думаю, что у меня правильная идея. Похоже, мне нужно будет создать зависимость кеша для моей веб-службы.
Чтобы связать вывод страницы с этой зависимостью, я думаю, мне следует использовать следующий метод:
Response.AddCacheItemDependency (cacheKey);
Я борюсь с тем, что я должен добавить в кеш?
Моя страница зависит от одного значения, возвращаемого веб-службой. В настоящее время я считаю, что я должен создать Custom Cache Dependency через создание подкласса CacheDependency и сохранить текущее значение в кеше. Затем я могу использовать Response.AddCacheItemDependency для формирования зависимости.
Затем я могу периодически проверять значение и NotifyDependencyChange, чтобы аннулировать мой кешированный HTTP-ответ.
Проблема в том, что мне нужно обеспечить немедленную очистку кеша, поэтому периодической проверки недостаточно. Как я могу гарантировать, что мой зависимый объект в кеше, который представляет значение, возвращаемое веб-службой, будет повторно оценен до того, как HTTP-ответ будет извлечен из кеша?
С уважением, Колин Э.