Я кеширую информацию о текущем входе пользователя в сеанс. Эта информация ленится, когда используется свойство CurrentUser
в моем глобальном классе приложений. Он делает это, вызывая GetUser() в моей пользовательской реализации MemberhipProvider, которая либо загружает пользователя из сеанса, либо загружает пользователя из БД и бросает пользовательский объект в сеансе.Сессия завершена, и пользователь больше не действителен
Как я должен обрабатывать этот сценарий? журналы
- пользователя в.
- Администратор удаляет пользователя (или деактивирует ... дело в том, они не могут войти больше).
- Сессия пользователя заканчивается.
- Пользователь переходит на страницу или делает запрос или что-то еще.
В настоящее время при возникновении такой сценарий, NullReferenceExceptions выбрасываются повсюду, потому что рамки ASP .NET вызывает GetUser(), который ничего не возвращает, потому что он не может найти пользователя в базе данных (и нет ничего в потому что он истек).