Неясность о сессиях ASP.NET - PullRequest
2 голосов
/ 13 января 2012

У меня, наверное, очень простой вопрос о сессиях. В функции загрузки страницы у меня есть следующий код:

Session["loggedInUserId"] = userId;

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

Нужно ли мне многопоточность?

Ответы [ 4 ]

1 голос
/ 13 января 2012

Не требуется. Пожалуйста, просмотрите Состояние сеанса ASP.NET (MSDN) post.

Согласно этому

ASP поддерживает состояние сеанса, предоставляя клиенту уникальный ключ, назначенный пользователю в начале сеанса. Этот ключ хранится в файле cookie HTTP, который клиент отправляет на сервер при каждом запросе. Затем сервер может прочитать ключ из cookie-файла и повторно раздувать состояние сеанса сервера.

Надеюсь, это то, что вы ищете.

1 голос
/ 13 января 2012

Сеанс Asp.net за сеанс браузера. два браузера на одной машине или два пользователя на двух разных машинах будут ссылаться на разные сессии, так что не беспокойтесь.

1 голос
/ 13 января 2012

, если вы устанавливаете userId переменную как статическую, возможно, в противном случае проблем не будет

0 голосов
/ 13 января 2012

Сеанс - это управление состоянием для каждого браузера.Уникальный идентификатор сеанса хранится в файле cookie для этого браузера.Никогда не храните конфиденциальную информацию в сеансе, поскольку идентификатор сеанса отправляется взад и вперед в виде простого текста и, следовательно, может использоваться внешним источником.

Подробнее о сеансах здесь.

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