Как поддерживать состояние сеанса аутентификации Forms между веб-ролями Azure?

#asp.net #azure #session-state

#asp.net #azure #состояние сеанса

Вопрос:

Я развернул бизнес-приложение Silverlight с поддержкой служб RIA в Azure, которое использует проверку подлинности Forms.

Чтобы включить проверку подлинности форм в Azure, я внедрил поставщиков хранилища таблиц из Azure Toolkit. Это почти работает, но у меня проблемы с сохранением состояния сеанса. После того, как я вошел в систему и несколько раз нажимаю клавишу F5 для обновления страницы, я переключаюсь между входом в систему и выходом из системы.

У меня есть два экземпляра веб-роли, и если я отключу один из них, он будет работать как шарм. Но как только я включаю второй экземпляр, он возвращается к этому спорадическому поведению. Очевидно, что состояние не сохраняется из-за балансировки нагрузки. Хорошо, я забыл внедрить поставщика сеансов, поэтому я сделал:

 <sessionState mode="Custom" customProvider="TableStorageSessionStateProvider">
  <providers>
    <clear />
    <add name="TableStorageSessionStateProvider"
          type="Microsoft.Samples.ServiceHosting.AspProviders.TableStorageSessionStateProvider"
          applicationName="AppAdmin"
          />
  </providers>
</sessionState>
  

К сожалению, это не помогло.

Обновление: фактическая таблица (сеанс) создается в хранилище таблиц, но там нет данных.

Есть идеи и / или предложения?

Комментарии:

1. Вы установили свой машинный ключ в web.config?

2. @Ben, действительно, у меня этого не было. Смотрите: social.msdn.microsoft.com/Forums/en-US/windowsazuredevelopment/… Отправьте свой комментарий в качестве ответа, и я пометлю его как правильный ответ.

Ответ №1:

Вы установили свой машинный ключ в web.config?