Хранение идентификатора пользователя в ASP.net

StackOverflow https://stackoverflow.com/questions/696823

  •  22-08-2019
  •  | 
  •  

Вопрос

Я использую ASP.net для разработки веб-сайта интрасети.Мне нужно сохранить идентификатор пользователя во всех обратных передачах для всех страниц веб-сайта.Целесообразно ли хранить эту информацию в сеансе или каким-либо другим доступным способом.

Это было полезно?

Решение

Если используется проверка подлинности с помощью форм, имя пользователя будет доступно как:

Page.User.Identity.Username

Если вам нужно сохранить еще одну часть информации, используйте Session.

ПС.Я рекомендую использовать класс для обертывания переменных сеанса для обеспечения строгой типизации и потенциальных значений по умолчанию.

Другие советы

Формы аутентификации также способен хранить собственный идентификатор пользователя и решает за вас множество задач, таких как установка файлов cookie, перенаправление страницы входа и т. д.

Вы можете установить идентификатор пользователя, используя Перенаправление из страницы входа метод, а затем используйте FormsAuthentication_OnAuthenticate событие, чтобы найти и установить свойство Page.User для доступа ко всей остальной логике, которая вам нужна.

Наиболее распространенные способы сделать это — использовать объект сеанса ASP.NET или файлы cookie.

В любом случае это будет работать хорошо, но если вы хотите, чтобы их пользовательская информация сохранялась даже после истечения времени сеанса (например, закрытия окна браузера), вам следует изучить файлы cookie.Информация о сеансе будет удалена после закрытия браузера или истечения времени ожидания активности.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top