Невозможно получить доступ к состоянию сеанса между экземплярами с помощью универсального поставщика состояний сеанса с SQL - PullRequest
1 голос
/ 17 января 2012

У меня есть проект Azure, который содержит веб-приложение.Он работает с двумя экземплярами в эмуляторе вычислений.Я добавил универсальный поставщик состояния сеанса и в настоящее время указываю его на базу данных SQL Express.

Когда сеанс создается, я вижу, как он создается в базе данных.

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

Проблема, однако, в том, что, если мне случится подключиться кВторой экземпляр данных сеанса недоступен.Если во втором случае я сохраняю данные в сеансе, они записываются в базу данных как новый сеанс.Дело в том, что идентификатор сеанса остается неизменным в файле cookie сеанса, но таблица базы данных создает новые записи для каждого экземпляра:

SessionID в таблице:

0gong5ihsrjakfzry53e4rtm / LM / W3SVC / 1273337584 / ROOT0gong5ihsrjakfzry53e4rtm / LM / W3SVC / 1273337585 / ROOT

Ради тестирования я попытался изменить applicationName в web.config и установить cookieless = false.

Есть идеи, что не так?

1 Ответ

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

Наблюдали ли вы такое же поведение при развертывании приложения?Я полагаю, что это проблема, которая наблюдалась в эмуляторе, но на самом Azure она работает, как и ожидалось.

См. эту ветку на форумах MSDN для обходного пути.

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