Freigeben über


SqlMembershipProvider.GetUserNameByEmail(String) Methode

Definition

Ruft den Benutzernamen ab, der der angegebenen E-Mail-Adresse zugeordnet ist.

public:
 override System::String ^ GetUserNameByEmail(System::String ^ email);
public override string GetUserNameByEmail (string email);
override this.GetUserNameByEmail : string -> string
Public Overrides Function GetUserNameByEmail (email As String) As String

Parameter

email
String

Die gesuchte E-Mail-Adresse.

Gibt zurück

Der Benutzername, der der angegebenen E-Mail-Adresse zugeordnet ist. Wenn keine Übereinstimmung gefunden wird, gibt diese Methode null zurück.

Ausnahmen

email überschreitet 256 Zeichen.

Mindestens ein Benutzer mit derselben E-Mail-Adresse ist in der Datenbank vorhanden, und RequiresUniqueEmail entspricht true.

Beispiele

Im folgenden Codebeispiel wird der Benutzername für eine angegebene E-Mail-Adresse abgerufen.

Hinweis

In diesem Beispiel wird die Membership -Klasse verwendet, um das SqlMembershipProvider angegebene als in defaultProvider der Web.config-Datei aufzurufen. Wenn Sie auf den Standardanbieter als Typ SqlMembershipProviderzugreifen müssen, können Sie die Provider -Eigenschaft der Membership -Klasse umwandeln. Um auf andere konfigurierte Anbieter als bestimmten Anbietertyp zuzugreifen, können Sie über ihren konfigurierten Namen mit der Providers -Eigenschaft der Membership -Klasse darauf zugreifen und sie als bestimmten Anbietertyp umwandeln.

<%@ 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">

public void Search_OnClick(object sender, EventArgs args)
{
  string username = Membership.GetUserNameByEmail(EmailTextBox.Text);

  if (username == null)
  {
    Msg.Text = "Email address " + Server.HtmlEncode(EmailTextBox.Text) + " is not found. Please reenter.";
  }
  else
  {
    Msg.Text = "The user name for " + Server.HtmlEncode(EmailTextBox.Text) + 
               " is " + Server.HtmlEncode(username) + ".";
  }

}

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

<form id="form1" runat="server">
  <h3>Forgot your Username? Search for it by email address.</h3>

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

  Email address: <asp:Textbox id="EmailTextBox" Columns="30" runat="server" />
                  <asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server"
                                        ControlToValidate="EmailTextBox" ForeColor="red"
                                        Display="Static" ErrorMessage="Required" /><br />

  <asp:Button id="SearchButton" Text="Search" 
              OnClick="Search_OnClick" runat="server" />

</form>

</body>
</html>
<%@ Page Language="VB" %>
<%@ 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">

Public Sub Search_OnClick(sender As Object, args As EventArgs)

  Dim username As String = Membership.GetUserNameByEmail(EmailTextBox.Text)

  If username Is Nothing Then
    Msg.Text = "Email address " & Server.HtmlEncode(EmailTextBox.Text) & " is not found. Please reenter."
  Else
    Msg.Text = "The user name for " & Server.HtmlEncode(EmailTextBox.Text) & _
               " is " & Server.HtmlEncode(username) & "."
  End If

End Sub

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

<form id="form1" runat="server">
  <h3>Forgot your Username? Search for it by email address.</h3>

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

  Email address: <asp:Textbox id="EmailTextBox" Columns="30" runat="server" />
                  <asp:RequiredFieldValidator id="EmailRequiredValidator" runat="server"
                                        ControlToValidate="EmailTextBox" ForeColor="red"
                                        Display="Static" ErrorMessage="Required" /><br />

  <asp:Button id="SearchButton" Text="Search" 
              OnClick="Search_OnClick" runat="server" />

</form>

</body>
</html>

Hinweise

Diese Methode wird von der Membership Klasse mit einer E-Mail-Adresse aufgerufen, die sie verwendet, um einen zugeordneten Benutzernamen aus der SQL Server-Datenbank abzurufen, die in der Konfigurationsdatei der ASP.NET Anwendung (Web.config) angegeben ist.

Wenn mehrere Benutzer in der Mitgliedschaftsdatenbank dieselbe E-Mail-Adresse haben, wird der erste gefundene Benutzername zurückgegeben. Sie können das requiresUniqueEmail Attribut in der Anwendungskonfigurationsdatei auf true festlegen, um sicherzustellen, dass jede E-Mail-Adresse in der Datenbank eindeutig ist.

Beim email-Parameterwert werden führende und nachstehende Leerzeichen abgeschnitten.

Gilt für:

Weitere Informationen