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

String

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 die SqlMembershipProvider angegebene Als defaultProvider in der datei Web.config aufzurufen. Wenn Sie als Typ SqlMembershipProviderauf den Standardanbieter zugreifen müssen, können Sie die Provider Eigenschaft der Membership Klasse umwandeln. Um auf andere konfigurierte Anbieter als bestimmten Anbietertyp zuzugreifen, können Sie mit der Providers Eigenschaft der Membership Klasse auf sie 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.

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

Gilt für

Siehe auch