Какие события возникают / не запускаются при возврате страницы из кэша asp.net? - PullRequest
0 голосов
/ 01 декабря 2008

У меня есть приложение, в которое пользователи должны войти. После входа в систему они могут выполнить поиск в нашей базе данных.

Их личность может повлиять на результаты поиска.

Я хочу использовать страницы с кэшем результатов. VaryByParam звучит хорошо для этого.

Однако я не понимаю, какие события возникают или не запускаются при возврате кэшированной версии страницы.

Я не хочу, чтобы другой пользователь пытался передать URL-параметры, которые могут указывать на другую учетную запись пользователя и, следовательно, предоставлять ему доступ к чужим результатам.

Поэтому мне нужно серверное событие, которое всегда срабатывает, даже когда страница возвращается из кэша, чтобы я мог проверить этот параметр ID по версии сеанса того же самого.

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

Какие события происходят при этих двух обстоятельствах?

1 Ответ

1 голос
/ 18 декабря 2008

Рассматривали ли вы настройку свойств кэша ответов, чтобы клиентский компьютер мог кэшировать результат? Используйте метод SetCacheability политики Cache для ответа, чтобы установить кешируемость на Private .

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

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