SqlMembershipProvider.GetUserNameByEmail(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает имя пользователя, связанное с указанным адресом электронной почты.
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
Параметры
- String
Адрес электронной почты для поиска.
Возвращаемое значение
Имя пользователя, связанное с указанным адресом электронной почты. Если такой адрес не найден, метод возвращает значение null
.
Исключения
Длина параметра email
превышает 256 символов.
В базе данных существует несколько пользователей с одинаковым адресом электронной почты, и свойству RequiresUniqueEmail присвоено значение true
.
Примеры
В следующем примере кода извлекается имя пользователя для указанного адреса электронной почты.
Примечание
В этом примере класс используется Membership для вызова указанного SqlMembershipProvider объекта в качестве defaultProvider
в файле Web.config. Если необходимо получить доступ к поставщику по умолчанию в качестве типа SqlMembershipProvider, можно привести Provider свойство Membership класса . Чтобы получить доступ к другим настроенным поставщикам в качестве определенного типа поставщика, вы можете получить к ним доступ по их заданному имени со Providers свойством Membership класса и привести их к определенному типу поставщика.
<%@ 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>
Комментарии
Этот метод вызывается классом Membership с адресом электронной почты, который используется для получения связанного имени пользователя из базы данных SQL Server, указанной в файле конфигурации приложения ASP.NET (Web.config).
Если несколько пользователей в базе данных членства имеют один и тот же адрес электронной почты, возвращается первое имя пользователя. Вы можете задать атрибуту requiresUniqueEmail
значение true
в файле конфигурации приложения, чтобы убедиться, что каждый адрес электронной почты в базе данных является уникальным.
Начальные и конечные пробелы удаляются из значения параметра email
.