Я могу получить имя пользователя как: User.Identity.Name
. Как я могу получить адрес электронной почты пользователя, потому что он должен быть сохранен (есть текстовое поле для него в регистрационной форме)?
Как получить адрес электронной почты пользователя из модели ASP.NET MVC по умолчанию?
Ответ 1
if(User.Identity.IsAuthenticated)
{
someLabel.Text = Membership.GetUser().Email;
}
В функции Membership.GetUser()
добавлено множество полезных свойств пользователя. Он возвращает объект типа MembershipUser
.
Ответ 2
protected string GetEmailAddress()
{
MembershipUser currUser = null;
if (HttpContext.Current.User != null)
{
currUser = Membership.GetUser(true);
return currUser.Email;
}
return currUser.Email;
}
Ответ 3
В MVC5 вы можете использовать UserManager для этого, например:
string UserEmail = await UserManager.GetEmailAsync(User.Identity.GetUserId());
Ответ 4
или если информация поступает извне страницы, вы можете сделать это.
string userName = Request.QueryString["username"];
TextBoxUserID.Text = Membership.GetUser(userName).Email;