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 E-Mail-Adresse, nach der gesucht werden soll.

Gibt zurück

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

Ausnahmen

email überschreitet 256 Zeichen.

Mehrere Benutzer mit derselben E-Mail-Adresse sind in der Datenbank vorhanden und RequiresUniqueEmail sind 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 die SqlMembershipProvider in der Web.config-Datei angegebene Klasse defaultProvider aufzurufen. Wenn Sie als Typ SqlMembershipProviderauf den Standardanbieter zugreifen müssen, können Sie die Provider Eigenschaft der Membership Klasse umwandeln. Wenn Sie auf andere konfigurierte Anbieter als bestimmten Anbietertyp zugreifen möchten, können Sie über den 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 zum Abrufen eines zugeordneten Benutzernamens aus der SQL Server-Datenbank verwendet wird, 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 benutzername zurückgegeben. Sie können das requiresUniqueEmail Attribut true in der Anwendungskonfigurationsdatei festlegen, um sicherzustellen, dass jede E-Mail-Adresse in der Datenbank eindeutig ist.

Führende und nachfolgende Leerzeichen werden aus dem email Parameterwert gekürzt.

Gilt für:

Weitere Informationen