Доступ на все коллекции сеансов активного клиента?

StackOverflow https://stackoverflow.com/questions/19825639

  •  05-07-2022
  •  | 
  •  

Вопрос

Есть ли метод в коде для доступа к объектам сеанса для все Текущие пользователи сайта, прочитайте информацию об их сеансе и вносите в них изменения?

В веб -приложении, с которым я работаю, пользователь администратора внесет изменения, которые затрагивают одного или нескольких пользователей. Однако каждый пользователь Кэши Эта информация в своем сеансе, когда они входят в систему. Поэтому мне нужен какой-то способ обновления данных их сеанса напрямую, либо каким-то образом уведомление затронутых пользователей о повторной загрузке данных из базы данных.

Мы не хотим, чтобы они нажимали в базу данных для этой информации о каждый Запрос, поэтому в идеале это должно произойти только при необходимости. Если доступ к сессии других пользователей невозможен, существуют ли другие (не датабазы) методы в ASP.NET для непосредственного уведомления конкретных пользователей о том, что событие произошло?


(Просто подумал об одном возможном методе после написания этого. Используя переменную приложения, которая содержит список всех идентификаторов пользователей, которые должны обновить свои кэшированные данные. Как каждый пользователь это делает, они удаляют свой идентификатор из списка ... так что это один подход .. есть ли другие?)

Это было полезно?

Решение

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

http://weblogs.asp.net/imranbaloch/archive/2010/04/05/reading-all-users-session.aspx

Я нашел ссылку из этого вопроса о переполнении стека:Перечислите все активные сеансы ASP.NET

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top