Språk

SqlMembershipProvider.GetUserNameByEmail(String) Metod

Definition

Hämtar användarnamnet som är associerat med den angivna e-postadressen.

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

Parametrar

email
String

E-postadressen som du vill söka efter.

Returer

Användarnamnet som är associerat med den angivna e-postadressen. Om ingen matchning hittas returnerar nullden här metoden .

Undantag

email överskrider 256 tecken.

Mer än en användare med samma e-postadress finns i databasen och RequiresUniqueEmail är true.

Exempel

I följande kodexempel hämtas användarnamnet för en angiven e-postadress.

Note

I det Membership här exemplet används klassen för att anropa den SqlMembershipProvider angivna som defaultProvider i filen Web.config. Om du behöver komma åt standardprovidern som typ SqlMembershipProviderkan du omvandla Provider egenskapen för Membership klassen. För att få åtkomst till andra konfigurerade leverantörer som en specifik providertyp kan du komma åt dem med deras konfigurerade namn med Providers egenskapen Membership för klassen och omvandla dem som den specifika providertypen.

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

Kommentarer

Den här metoden anropas av klassen Membership med en e-postadress, som används för att hämta ett associerat användarnamn från den SQL Server databas som anges i ASP.NET-programmets konfigurationsfil (Web.config).

Om fler än en användare i medlemskapsdatabasen har samma e-postadress returneras det första användarnamnet som påträffas. Du kan ange requiresUniqueEmail attributet till true i programkonfigurationsfilen för att säkerställa att varje e-postadress i databasen är unik.

Inledande och avslutande blanksteg trimmas från email parametervärdet.

Gäller för

Se även