Где HttpRuntime.Cache хранит данные?

Я пытаюсь реализовать веб-приложение с функциями кэширования. Причина, по которой мне нужно кэширование, заключается в том, что у нас есть приложение, которое позволяет пользователям получать доступ к онлайн-курсам. Теперь, когда пользователь входит в систему, я проверяю его по нашей базе данных. После проверки я хочу сохранить идентификатор пользователя и идентификатор курса в кеше в течение 20 минут, чтобы, если он запросит его снова, я мог извлечь значения из кэша как для идентификатора пользователя, так и для идентификатора курса и, если он действителен, предоставить ему доступ По некоторым причинам я не могу использовать переменные Session в этом приложении, поэтому они не являются опцией.

Теперь кеширующий код в моем приложении находится внутри обработчика HTTP (файл .ashx). Теперь я попытался вызвать объект кэша, как вы делаете для страницы aspx, но не смог, вероятно, потому что это обработчик, а не веб-страница. Так,

Cache.Insert("Id", 123); 

не будет работать в обработчике. Тогда я попробовал HTTPRuntime.cache. Но после некоторого исследования я обнаружил, что HTTPRuntime.cache является общим для всего приложения. Я не совсем понимаю "Целое приложение". Означает ли это, что он используется всеми пользователями на разных компьютерах, которые обращаются к нашим приложениям? или это означает, что оно доступно всем пользователям наone computer доступ к нашему приложению. Потому что, если это последнее, я в порядке с этим. Так является ли HTTPRuntime.cache хорошим способом кэширования данных для одного браузера (или одного компьютера) или существует другой и лучший способ реализовать кэширование браузера для хранения данных?

Ответы на вопрос(1)

Ваш ответ на вопрос