Проблемы с состоянием сеанса enableSessionState в приложении asp.net - PullRequest
1 голос
/ 21 октября 2011

Я получаю следующую ошибку в производственной среде

Состояние сеанса может использоваться, только если для enableSessionState задано значение true, либо в файле конфигурации, либо в директиве Page. Также убедитесь, что System.Web.SessionStateModule или пользовательский модуль состояния сеанса включены в раздел configuration \ system.web \ httpModules конфигурации приложения.

Следующие вещи, которые я пробовал на данный момент

  • Проверено machine.config и web.config, оба имеют enableSessionState="true"
  • Добавлено enableSessionState="true" к страницам в web.config
  • Модуль состояния также добавлен в <httpmodules> раздел
  • Даже попробовал установить enableSessionState="true" в директиве страницы

Примечание: когда я пытаюсь отладить код в среде Dev, все работает нормально, как и должно.

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

Ответы [ 2 ]

5 голосов
/ 21 октября 2011

Как выглядит ваша конфигурация состояния сеанса?Возможно, вы хотите настроить обработку сеанса inproc.

http://msdn.microsoft.com/en-us/library/ms178586.aspx

1 голос
/ 24 апреля 2014

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

Сначала я хочу подчеркнуть, что я использую веб-формы, а не MVC - это может не сработать дляMVC.

Я создал веб-форму, которая содержала класс ContactUser , и я создал свой собственный конструктор, чтобы он выглядел следующим образом:

public ContactUser (String to,bool isUser) {...}

И в этом я попытался получить доступ к переменной сеанса:

String user = Session ["username"]

Оказывается, вы НЕ МОЖЕТЕ использовать состояние сеанса в конструкторе класса, но можете использовать его в других написанных вами функциях и в защищенном пустом Page_Load (объекте).отправитель, EventArgs e) процедура.Поэтому, как только я переместил состояние сеанса из конструктора в процедуру загрузки страницы, все заработало:)!

Надеюсь, это поможет любому, кто столкнется с той же проблемой: D!

...