Как удалить отдельные ответы HTTP из кэша .NET? - PullRequest
0 голосов
/ 04 июля 2019

У меня есть контроллер ASP.NET MVC с методом, который возвращает файл и оформлен с помощью [HttpGet].

При первом вызове он получает файл, а перед возвратом он имеет код:

ControllerContext.HttpContext.Response.Cache.SetExpires(DateTime.Now.AddDays(7));
ControllerContext.HttpContext.Response.Cache.SetCacheability(HttpCacheability.Public);
ControllerContext.HttpContext.Response.Cache.SetValidUntilExpires(false);

Последующие запросы к этому методу [HttpGet] возвращают файл из кэша, поэтому метод даже не доступен по HTTP-запросу.

В другом месте есть код, который удаляет эти файлы изфайловая система, но последующие запросы извлекают ответ из кэша, поэтому файлы все еще могут быть загружены.

Как я могу удалить эти элементы из кэша при удалении файлов?

1 Ответ

0 голосов
/ 04 июля 2019

Вы можете добавить код, чтобы каждый раз проверять, существует ли файл в определенном месте, а затем возвращать файл из кэша.

или

, если ваш код для удаления файла существует вто же самое приложение, затем вы можете добавить код для очистки кэша после удаления файла.

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