Каково различие между Кэшем HttpRuntime и Кэшем HttpContext?

Я пишу код для CPython и IronPython, но подсказка должна работать на Jython также.

В основном, я пишу всей платформе определенный код в отдельных модулях/пакетах и затем импортирую соответствующий на основе платформы, на которой я работаю. (см. комментарий cdleary выше)

Это особенно важно когда дело доходит до различий между реализациями SQLite и если Вы реализуете какой-либо код GUI.

19
задан Community 23 May 2017 в 11:45
поделиться

3 ответа

Это действительно тот же кеш в конце, только HttpContext.Current иногда может иметь значение NULL (когда не в веб-контексте или в веб-контексте, но еще не построен). Можно всегда использовать HttpRuntime.Cache .

13
ответ дан 30 November 2019 в 05:01
поделиться

Когда вы находитесь на обычной веб-странице, вы можете безопасно использовать HttpContext.Cache или только свойство Cache страницы.

Если вы делаете что-то, чего нет на странице, вам часто нужно использовать HttpRuntime.Cache для безопасного доступа к нему.

В некоторых случаях вы можете узнать, есть ли контекст http или нет, например, если вы запускаете отдельный поток с веб-страницы, этот поток не имеет контекста http. В других случаях у вас может быть контекст http, например, в методе Application_Start в global.asax , поскольку приложение может не всегда запускаться из-за запроса.

2
ответ дан 30 November 2019 в 05:01
поделиться

Я тоже считаю его вводящим в заблуждение, хотя мы все знаем он просто возвращает HttpRuntime.Cache внутри. Кроме того, HttpRuntime - плохой выбор для раскрытия кэша, я думаю.

Все говорят, что Session является кешем уровня сеанса, а кэш, о котором мы говорим, является кешем уровня приложения. Я бы предпочел иметь Application.Cache в качестве кэша, который мы используем сегодня, и HttpContext.Cache для обозначения того, что известно как HttpContext.Items .

] Что касается ответа на ваш вопрос, я думаю, мы все должны придерживаться HttpRuntime.Cache, чтобы сделать наш код более понятным, даже если у нас есть разные способы доступа к нему.

2
ответ дан 30 November 2019 в 05:01
поделиться
Другие вопросы по тегам:

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