Membership.GetUser Método

Definição

Obtém informações de um usuário associado da fonte de dados.

Sobrecargas

GetUser(String, Boolean)

Obtém informações da fonte de dados do usuário associado especificado. Atualiza o carimbo de data/hora da última atividade para o usuário especificado, se especificado.

GetUser(Object, Boolean)

Obtém as informações da fonte de dados do usuário associado relativo ao identificador exclusivo especificado. Atualiza o carimbo de data/hora da última atividade para o usuário especificado, se especificado.

GetUser(String)

Obtém informações da fonte de dados do usuário associado especificado.

GetUser(Boolean)

Obtém as informações da fonte de dados para o usuário associado atualmente conectado. Atualiza o carimbo de data/hora da última atividade do usuário associado atualmente conectado, se especificado.

GetUser()

Obtém as informações da fonte de dados e atualiza a atividade de último carimbo de data/hora para o usuário associado atualmente conectado.

GetUser(Object)

Obtém as informações da fonte de dados do usuário associado relativo ao identificador exclusivo especificado.

GetUser(String, Boolean)

Obtém informações da fonte de dados do usuário associado especificado. Atualiza o carimbo de data/hora da última atividade para o usuário especificado, se especificado.

public static System.Web.Security.MembershipUser GetUser (string username, bool userIsOnline);

Parâmetros

username
String

O nome do usuário a ser recuperado.

userIsOnline
Boolean

Se for true, atualizará o carimbo de data/hora da última atividade para o usuário especificado.

Retornos

Um objeto MembershipUser que representa o usuário especificado. Se o parâmetro username não corresponder a um usuário existente, este método retornará null.

Exceções

username contém uma vírgula (,).

username é null.

Exemplos

O exemplo de código a seguir recupera a senha de um nome de usuário especificado e a envia para o endereço de email do usuário especificado. A chamada para GetUser especifica que o carimbo de data/hora da última atividade para o usuário não seja atualizado.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.Net.Mail" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

public void Page_Load(object sender, EventArgs args)
{
  if (!Membership.EnablePasswordRetrieval)
  {
    FormsAuthentication.RedirectToLoginPage();
  }

  Msg.Text = "";

  if (!IsPostBack)
  {
    Msg.Text = "Please enter a user name.";
  }
  else
  {
    VerifyUsername();
  }
}


public void VerifyUsername()
{
    MembershipUser user = Membership.GetUser(UsernameTextBox.Text, false);

    if (user == null)
    {
      Msg.Text = "The user name " + Server.HtmlEncode(UsernameTextBox.Text) + " was not found. Please check the value and re-enter.";

      QuestionLabel.Text = "";
      QuestionLabel.Enabled = false;
      AnswerTextBox.Enabled = false;
      EmailPasswordButton.Enabled = false;
    }
    else
    {
      QuestionLabel.Text = user.PasswordQuestion;
      QuestionLabel.Enabled = true;
      AnswerTextBox.Enabled = true;
      EmailPasswordButton.Enabled = true;
    }
}


public void EmailPassword_OnClick(object sender, EventArgs args)
{
  // Note: Returning a password in clear text using email is not recommended for
  // sites that require a high level of security.

  try
  {
    string password = Membership.Provider.GetPassword(UsernameTextBox.Text, AnswerTextBox.Text);
    MembershipUser u = Membership.GetUser(UsernameTextBox.Text);
    EmailPassword(u.Email, password);
    Msg.Text = "Your password was sent via email.";
  }
  catch (MembershipPasswordException e)
  {
    Msg.Text = "The password answer is incorrect. Please check the value and try again.";
  }
  catch (System.Configuration.Provider.ProviderException e)
  {
    Msg.Text = "An error occurred retrieving your password. Please check your values " +
               "and try again.";
  }
}


private void EmailPassword(string email, string password)
{
  try
  {
    MailMessage Message = new MailMessage("administrator", email);
    Message.Subject = "Your Password";
    Message.Body = "Your password is: " + Server.HtmlEncode(password);

    SmtpClient SmtpMail = new SmtpClient("SMTPSERVER");
    SmtpMail.Send(Message);
  }
  catch 
  {
    Msg.Text = "An exception occurred while sending your password. Please try again.";
  }
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Retrieve Password</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Retrieve Password</h3>

  <asp:Label id="Msg" runat="server" ForeColor="maroon" /><br />

  Username: <asp:Textbox id="UsernameTextBox" Columns="30" runat="server" AutoPostBack="true" />
            <asp:RequiredFieldValidator id="UsernameRequiredValidator" runat="server"
                                        ControlToValidate="UsernameTextBox" ForeColor="red"
                                        Display="Static" ErrorMessage="Required" /><br />

  Password Question: <b><asp:Label id="QuestionLabel" runat="server" /></b><br />

  Answer: <asp:TextBox id="AnswerTextBox" Columns="60" runat="server" Enabled="false" />
          <asp:RequiredFieldValidator id="AnswerRequiredValidator" runat="server"
                                      ControlToValidate="AnswerTextBox" ForeColor="red"
                                      Display="Static" ErrorMessage="Required" Enabled="false" /><br />

  <asp:Button id="EmailPasswordButton" Text="Email My Password" 
              OnClick="EmailPassword_OnClick" runat="server" Enabled="false" />

</form>

</body>
</html>

Comentários

O GetUser método recupera as informações do usuário da fonte de dados e cria um MembershipUser objeto preenchido com os dados retornados.

Se você usar uma das GetUser sobrecargas que não usam um username parâmetro, GetUser retornará as informações para o usuário associado conectado atualmente. O usuário de associação de logon atual é identificado pelo Name do usuário no atual HttpContext.

Você também pode especificar se deseja GetUser atualizar o carimbo de data/hora da última atividade para o usuário que está sendo recuperado com o userIsOnline parâmetro . GetUser Das sobrecargas que não recebem um userIsOnline parâmetro, Membership.GetUser atualiza implicitamente o carimbo de data/hora da última atividade para o usuário. Membership.GetUser e GetUser não.

Confira também

Aplica-se a

GetUser(Object, Boolean)

Obtém as informações da fonte de dados do usuário associado relativo ao identificador exclusivo especificado. Atualiza o carimbo de data/hora da última atividade para o usuário especificado, se especificado.

public static System.Web.Security.MembershipUser GetUser (object providerUserKey, bool userIsOnline);

Parâmetros

providerUserKey
Object

O identificador de usuário exclusivo da fonte de dados de associação para o usuário.

userIsOnline
Boolean

Se for true, atualizará o carimbo de data/hora da última atividade para o usuário especificado.

Retornos

Um objeto MembershipUser que representa o usuário associado ao identificador exclusivo especificado.

Exceções

providerUserKey é null.

Comentários

O GetUser método recupera as informações do usuário da fonte de dados e cria um MembershipUser objeto preenchido com os dados retornados. O usuário é identificado com o identificador exclusivo da fonte de dados especificada no providerUserKey parâmetro .

Confira também

Aplica-se a

GetUser(String)

Obtém informações da fonte de dados do usuário associado especificado.

public static System.Web.Security.MembershipUser GetUser (string username);

Parâmetros

username
String

O nome do usuário a ser recuperado.

Retornos

Um objeto MembershipUser que representa o usuário especificado. Se o parâmetro username não corresponder a um usuário existente, este método retornará null.

Exceções

username contém uma vírgula (,).

username é null.

Exemplos

O exemplo de código a seguir usa o GetUser método para retornar um MembershipUser objeto para o usuário conectado atual e atualiza o endereço de email do usuário.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

MembershipUser u;

public void Page_Load(object sender, EventArgs args)
{
  u = Membership.GetUser(User.Identity.Name);

  if (!IsPostBack)
  {
    EmailTextBox.Text = u.Email; 
  }
}

public void UpdateEmailButton_OnClick(object sender, EventArgs args)
{
  try
  {
    u.Email = EmailTextBox.Text;

    Membership.UpdateUser(u);
  
    Msg.Text = "User email updated.";
  }
  catch (System.Configuration.Provider.ProviderException e)
  {
    Msg.Text = e.Message;
  }
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Update User E-Mail</title>
</head>
<body>

<form id="form1" runat="server">
  <h3>Update E-Mail Address for <%=User.Identity.Name%></h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />

  <table cellpadding="3" border="0">
    <tr>
      <td>Email Address:</td>
      <td><asp:TextBox id="EmailTextBox" MaxLength="128" Columns="30" runat="server" /></td>
      <td><asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server"
                                    ControlToValidate="EmailTextBox" ForeColor="red"
                                    Display="Static" ErrorMessage="Required" /></td>
    </tr>
    <tr>
      <td></td>
      <td><asp:Button id="UpdateEmailButton" 
                      Text="Update Email" 
                      OnClick="UpdateEmailButton_OnClick" 
                      runat="server" /></td>
    </tr>
  </table>
</form>

</body>
</html>

Comentários

O GetUser método recupera as informações do usuário da fonte de dados e cria um MembershipUser objeto preenchido com os dados retornados. Se você usar uma das GetUser sobrecargas que não usam um username parâmetro, GetUser retornará as informações para o usuário associado conectado atualmente. O usuário de associação de logon atual é identificado pelo Name do usuário no atual HttpContext.

Você também pode especificar se deseja GetUser atualizar o carimbo de data/hora da última atividade para o usuário que está sendo recuperado com o userIsOnline parâmetro . GetUser Das sobrecargas que não recebem um userIsOnline parâmetro, Membership.GetUser atualiza implicitamente o carimbo de data/hora da última atividade para o usuário. Membership.GetUser e GetUser não.

Confira também

Aplica-se a

GetUser(Boolean)

Obtém as informações da fonte de dados para o usuário associado atualmente conectado. Atualiza o carimbo de data/hora da última atividade do usuário associado atualmente conectado, se especificado.

public static System.Web.Security.MembershipUser GetUser (bool userIsOnline);

Parâmetros

userIsOnline
Boolean

Se for true, atualizará o carimbo de data/hora da última atividade para o usuário especificado.

Retornos

Um objeto MembershipUser que representa o usuário atualmente conectado.

Exceções

Nenhum usuário associado está atualmente conectado.

Exemplos

O exemplo de código a seguir exibe o nome de usuário do usuário associado conectado atualmente na página ASP.NET sem atualizar o carimbo de data/hora da última atividade para o usuário.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

MembershipUser currentUser;

public void Page_Load()
{
  currentUser = Membership.GetUser(false);
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Home Page</title>
</head>
<body>

<form id="form1" runat="server">
Welcome <b><%=currentUser.UserName%></b>. 
</form>

</body>
</html>

Comentários

O GetUser método recupera as informações do usuário da fonte de dados e cria um MembershipUser objeto preenchido com os dados retornados. Se você usar uma das GetUser sobrecargas que não usam um username parâmetro, GetUser retornará as informações para o usuário associado conectado atualmente. O usuário de associação de logon atual é identificado pelo Name do usuário no atual HttpContext.

Você também pode especificar se deseja GetUser atualizar o carimbo de data/hora da última atividade para o usuário que está sendo recuperado usando o userIsOnline parâmetro . GetUser Das sobrecargas que não recebem um userIsOnline parâmetro, GetUser() atualiza implicitamente o carimbo de data/hora da última atividade para o usuário. GetUser(System.String) e GetUser(System.Object) não.

Confira também

Aplica-se a

GetUser()

Obtém as informações da fonte de dados e atualiza a atividade de último carimbo de data/hora para o usuário associado atualmente conectado.

public static System.Web.Security.MembershipUser GetUser ();

Retornos

Um objeto MembershipUser que representa o usuário atualmente conectado.

Exceções

Nenhum usuário associado está atualmente conectado.

Exemplos

O exemplo de código a seguir atualiza o carimbo de data/hora da última atividade para o usuário associado conectado atualmente e exibe o nome de usuário na página ASP.NET.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

MembershipUser currentUser;

public void Page_Load()
{
  currentUser = Membership.GetUser();
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Home Page</title>
</head>
<body>

<form id="form1" runat="server">
Welcome <b><%=currentUser.UserName%></b>. 
</form>

</body>
</html>

Comentários

GetUser() recupera as informações do usuário da fonte de dados e cria um MembershipUser objeto preenchido com os dados retornados. Se você usar uma das GetUser sobrecargas que não usam um username parâmetro, GetUser retornará as informações para o usuário associado conectado atualmente. O usuário de associação de logon atual é identificado pelo Name do usuário no atual HttpContext.

Você também pode especificar se deseja GetUser atualizar o carimbo de data/hora da última atividade para o usuário que está sendo recuperado usando o userIsOnline parâmetro . GetUser Das sobrecargas que não recebem um userIsOnline parâmetro, GetUser() atualiza implicitamente o carimbo de data/hora da última atividade para o usuário. GetUser(System.String) e GetUser(System.Object) não.

Confira também

Aplica-se a

GetUser(Object)

Obtém as informações da fonte de dados do usuário associado relativo ao identificador exclusivo especificado.

public static System.Web.Security.MembershipUser GetUser (object providerUserKey);

Parâmetros

providerUserKey
Object

O identificador de usuário exclusivo da fonte de dados de associação para o usuário.

Retornos

Um objeto MembershipUser que representa o usuário associado ao identificador exclusivo especificado.

Exceções

providerUserKey é null.

Comentários

O GetUser método recupera as informações do usuário da fonte de dados e cria um MembershipUser objeto preenchido com os dados retornados. O usuário é identificado usando o identificador exclusivo da fonte de dados especificada usando o providerUserKey parâmetro .

Você também pode especificar se deseja GetUser atualizar o carimbo de data/hora da última atividade para o usuário que está sendo recuperado com o userIsOnline parâmetro . GetUser Das sobrecargas que não recebem um userIsOnline parâmetro, GetUser() atualiza implicitamente o carimbo de data/hora da última atividade para o usuário. GetUser(System.String) e GetUser(System.Object) não

Confira também

Aplica-se a