Сессия, пустая в ASP.NET / IIS после, восстанавливает

Я работаю над веб-приложением MVC ASP.NET, и я сделал свой собственный модуль аутентификации, который основан на сессии (никакие cookie). Проблема: Когда я восстанавливаю свое приложение, я автоматически зарегистрирован (сессия пуста).

Обычно это не большая проблема, потому что мое приложение 'автоматически' не восстанавливает в продуктивной среде. Но я также сделал модуль, который изменяет файлы ресурсов и после того, как модификация файла ресурсов, приложение, кажется, восстанавливает автоматически.

Так мой фактический вопрос: действительно ли возможно 'сохранить' переменные/оставаться сессии зарегистрированными после восстанавливания?

5
задан Jeff Maes 19 February 2010 в 12:49
поделиться

2 ответа

Исходный код, файлы ресурсов (изображения, конфигурационные файлы и т.д.) и сценарии сборки (в Netbeans все файлы сборки ant) должны находиться в репозитории.

Не помещайте туда каталог dist/build. Обычно не рекомендуется помещать построенные артефакты (файлы классов, банку проекта и т.д.) в систему управления версиями.

Однако совместное использование метаданных Netbeans может быть полезным при работе над одним и тем же проектом на разных машинах.

-121--3357697-

Для улучшения пользовательской сериализации необходимо внедрить функцию IXmlSerializable.

-121--3320602-

Вам нужно будет использовать что-то, кроме сеансов InProc. В качестве резервного хранилища для сеансов необходимо использовать сервер ASP.net State Server или SQL Server. Они могут быть немного медленнее, но более устойчивы.

6
ответ дан 14 December 2019 в 08:49
поделиться

Как отмечает Пэдди, вам нужно использовать что-то другое, кроме сессий InProc. Перейдите на MSDN, чтобы узнать, как перейти на решение на базе SQL или Windows Service.

На самом деле я считаю, что хорошей практикой является всегда использовать внепроцессные сессии. Удар по производительности при использовании ASP.NET State Service на том же ящике минимален, и вы не испытаете никаких неприятных сюрпризов, если решите изменить механизм состояния сессии в какой-то момент в будущем (пока работает InProc, вы можете засунуть в сессию что угодно, но когда вы используете состояние сессии вне процесса, данные должны быть сериализуемыми, что может стать неприятным сюрпризом в то время, когда сюрпризы не приветствуются).

1
ответ дан 14 December 2019 в 08:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: