Как я могу получить доступ к кешу HTTP в библиотеке классов С#?
Как я могу получить доступ к кешу HTTP в библиотеке классов С#?
Ответ 1
Рекомендуется использовать System.Web.HttpRuntime.Cache
, а не System.Web.HttpContext.Current.Cache
, поскольку в этой статье.
Кроме того, хотя в статье рассказывается о производительности, у меня также были проблемы в прошлом, когда HttpContext.Current
не всегда доступен, когда вы ожидаете, что это произойдет, особенно при работе с асинхронными обработчиками.
Еще одно замечание: если вы не получаете доступ к кешу в контексте HTTP-запроса, HttpContext
вам не поможет, так как для вас не будет подходящего контекста.
Ответ 2
Если вы имеете в виду кеш ASP.NET, то вы можете использовать System.Web.HttpContext.Current.Cache
.
HttpContext.Current также можно использовать доступ к текущему запросу, ответу и т.д.
Ответ 3
Вы можете получить доступ к кешу HTTP, используя пространство имен System.Web.Caching, как описано в этой статье MSDN: System.Web.Cache
После импорта пространства имен существует статический аксессор для кэша, который вы можете ссылаться. Пока кеширование было создано ранее (с помощью процесса ASP.NET или другого инициатора), вы получите доступ к кешу, иначе он вернет ссылку NULL.