Udostępnij za pośrednictwem


SqlMembershipProvider.GetUserNameByEmail(String) Metoda

Definicja

Pobiera nazwę użytkownika skojarzona z określonym adresem e-mail.

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

Parametry

email
String

Adres e-mail do wyszukania.

Zwraca

Nazwa użytkownika skojarzona z określonym adresem e-mail. Jeśli nie zostanie znalezione dopasowanie, ta metoda zwraca wartość null.

Wyjątki

email przekracza 256 znaków.

W bazie danych istnieje więcej niż jeden użytkownik o tym samym adresie e-mail i RequiresUniqueEmail ma wartość true.

Przykłady

Poniższy przykład kodu pobiera nazwę użytkownika dla określonego adresu e-mail.

Uwaga

W tym przykładzie użyto Membership klasy , aby wywołać SqlMembershipProvider element określony jako defaultProvider w pliku Web.config. Jeśli musisz uzyskać dostęp do domyślnego dostawcy jako typu SqlMembershipProvider, możesz rzutować Provider właściwość Membership klasy . Aby uzyskać dostęp do innych skonfigurowanych dostawców jako określony typ dostawcy, możesz uzyskać do nich dostęp za pomocą ich skonfigurowanej nazwy z Providers właściwością Membership klasy i rzutować je jako określony typ dostawcy.

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

Uwagi

Ta metoda jest wywoływana przez klasę Membership z adresem e-mail, którego używa do pobierania skojarzonej nazwy użytkownika z bazy danych programu SQL Server określonej w pliku konfiguracji aplikacji ASP.NET (Web.config).

Jeśli więcej niż jeden użytkownik w bazie danych członkostwa ma ten sam adres e-mail, zwracana jest pierwsza napotkana nazwa użytkownika. Możesz ustawić requiresUniqueEmail atrybut na true w pliku konfiguracji aplikacji, aby upewnić się, że każdy adres e-mail w bazie danych jest unikatowy.

Spacje wiodące i końcowe są przycinane z wartości parametru email .

Dotyczy

Zobacz też