Членство в FormsAuthentication. GetUser () пустой указатель

Я использую Аутентификацию Форм и имею основную страницу регистрации и страницу по умолчанию.

Когда я нахожусь на странице регистрации и называю SignOn, это просто работает отлично. Однако, когда я нахожусь все еще на Странице регистрации Membership.GetUser() пустой указатель возвратов. Когда я перенаправляю к своей странице по умолчанию, Membership.GetUser() возвращает мою информацию о пользователе.

Есть ли любой способ, которым я добираюсь, заставляют этот метод возвращать моего пользователя в то время как все еще на странице регистрации. Я читал на всем протяжении Google, которые другой имеют подобные проблемы, где он будет только работать, после того как Вы перенаправляете.

Сообщите мне, нужна ли Вам дополнительная информация.

Вот простой фрагмент кода того, что я использую, чтобы проверить, что информация устанавливается:

bool authenticated = User.Identity.IsAuthenticated;
            string username = User.Identity.Name;

            MembershipUser user = Membership.GetUser();

Я поместил этот код и страницы регистрации и страницы по умолчанию в коде позади, и только страница по умолчанию имеет значения и показывает, что это аутентифицируется после того, как процесс аутентификации выполняется.

9
задан GEOCHET 30 June 2012 в 15:23
поделиться

2 ответа

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

11
ответ дан 4 December 2019 в 07:47
поделиться

Еще можно попробовать следующий код:

 MembershipUser user = Membership.GetUser(username);
 GenericIdentity identity = new GenericIdentity(user.UserName);
 RolePrincipal principal = new RolePrincipal(identity);
 System.Threading.Thread.CurrentPrincipal = principal;
 HttpContext.Current.User = principal;
13
ответ дан 4 December 2019 в 07:47
поделиться
Другие вопросы по тегам:

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