Membership.FindUsersByEmail メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定したメール アドレスと一致するメール アドレスを持つメンバーシップ ユーザーのコレクションを取得します。
オーバーロード
FindUsersByEmail(String, Int32, Int32, Int32) |
電子メール アドレスが指定内容と一致するメンバーシップ ユーザーのコレクションをページで取得します。 |
FindUsersByEmail(String) |
指定したメール アドレスと一致するメール アドレスを持つメンバーシップ ユーザーのコレクションを取得します。 |
FindUsersByEmail(String, Int32, Int32, Int32)
電子メール アドレスが指定内容と一致するメンバーシップ ユーザーのコレクションをページで取得します。
public:
static System::Web::Security::MembershipUserCollection ^ FindUsersByEmail(System::String ^ emailToMatch, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public static System.Web.Security.MembershipUserCollection FindUsersByEmail (string emailToMatch, int pageIndex, int pageSize, out int totalRecords);
static member FindUsersByEmail : string * int * int * int -> System.Web.Security.MembershipUserCollection
Public Shared Function FindUsersByEmail (emailToMatch As String, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As MembershipUserCollection
パラメーター
- emailToMatch
- String
検索対象の電子メール アドレス。
- pageIndex
- Int32
返される結果ページのインデックス。 pageIndex
は 0 から始まります。
- pageSize
- Int32
取得する結果のページのサイズ。
- totalRecords
- Int32
一致したユーザーの合計数。
戻り値
pageSize
で指定されたページから始まる pageIndex
MembershipUserCollection オブジェクトのページを格納している MembershipUser。
例外
例
次のコード例では、メソッドを FindUsersByEmail 使用して、ユーザー入力に基づいてメンバーシップ データベースからメンバーシップ ユーザー情報を取得し、結果をデータのページに表示します。
重要
この例には、セキュリティ上の潜在的な脅威であるユーザー入力を受け入れるテキスト ボックスが含まれています。 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。 詳細については、「スクリプトによる攻略の概要」を参照してください。
<%@ 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">
int pageSize = 5;
int totalUsers;
int totalPages;
int currentPage = 1;
private void GetUsers()
{
UserGrid.DataSource = Membership.FindUsersByEmail(EmailTextBox.Text,
currentPage - 1, pageSize, out totalUsers);
totalPages = ((totalUsers - 1) / pageSize) + 1;
// Ensure that we do not navigate past the last page of users.
if (currentPage > totalPages)
{
currentPage = totalPages;
GetUsers();
return;
}
UserGrid.DataBind();
CurrentPageLabel.Text = currentPage.ToString();
TotalPagesLabel.Text = totalPages.ToString();
if (currentPage == totalPages)
NextButton.Visible = false;
else
NextButton.Visible = true;
if (currentPage == 1)
PreviousButton.Visible = false;
else
PreviousButton.Visible = true;
if (totalUsers <= 0)
NavigationPanel.Visible = false;
else
NavigationPanel.Visible = true;
}
public void NextButton_OnClick(object sender, EventArgs args)
{
currentPage = Convert.ToInt32(CurrentPageLabel.Text);
currentPage++;
GetUsers();
}
public void PreviousButton_OnClick(object sender, EventArgs args)
{
currentPage = Convert.ToInt32(CurrentPageLabel.Text);
currentPage--;
GetUsers();
}
public void GoButton_OnClick(object sender, EventArgs args)
{
currentPage = 1;
GetUsers();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Users by Email</title>
</head>
<body>
<form id="form1" runat="server">
<h3>User List</h3>
Email address to Search for:
<asp:TextBox id="EmailTextBox" runat="server" />
<asp:Button id="GoButton" Text=" Go " OnClick="GoButton_OnClick" runat="server" /><br />
<asp:Panel id="NavigationPanel" Visible="false" runat="server">
<table border="0" cellpadding="3" cellspacing="3">
<tr>
<td style="width:100">Page <asp:Label id="CurrentPageLabel" runat="server" />
of <asp:Label id="TotalPagesLabel" runat="server" /></td>
<td style="width:60"><asp:LinkButton id="PreviousButton" Text="< Prev"
OnClick="PreviousButton_OnClick" runat="server" /></td>
<td style="width:60"><asp:LinkButton id="NextButton" Text="Next >"
OnClick="NextButton_OnClick" runat="server" /></td>
</tr>
</table>
</asp:Panel>
<asp:DataGrid id="UserGrid" runat="server"
CellPadding="2" CellSpacing="1"
Gridlines="Both">
<HeaderStyle BackColor="darkblue" ForeColor="white" />
</asp:DataGrid>
</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">
Dim pageSize As Integer = 5
Dim totalUsers As Integer
Dim totalPages As Integer
Dim currentPage As Integer = 1
Private Sub GetUsers()
UserGrid.DataSource = Membership.FindUsersByEmail(EmailTextBox.Text, _
currentPage - 1, pageSize, totalUsers)
totalPages = ((totalUsers - 1) \ pageSize) + 1
' Ensure that we do not navigate past the last page of users.
If currentPage > totalPages Then
currentPage = totalPages
GetUsers()
Return
End If
UserGrid.DataBind()
CurrentPageLabel.Text = currentPage.ToString()
TotalPagesLabel.Text = totalPages.ToString()
If currentPage = totalPages Then
NextButton.Visible = False
Else
NextButton.Visible = True
End If
If currentPage = 1 Then
PreviousButton.Visible = False
Else
PreviousButton.Visible = True
End If
If totalUsers <= 0 Then
NavigationPanel.Visible = False
Else
NavigationPanel.Visible = True
End If
End Sub
Public Sub NextButton_OnClick(sender As Object, args As EventArgs)
currentPage = Convert.ToInt32(CurrentPageLabel.Text)
currentPage += 1
GetUsers()
End Sub
Public Sub PreviousButton_OnClick(sender As Object, args As EventArgs)
currentPage = Convert.ToInt32(CurrentPageLabel.Text)
currentPage -= 1
GetUsers()
End Sub
Public Sub GoButton_OnClick(sender As Object, args As EventArgs)
currentPage = 1
GetUsers()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Users by Email</title>
</head>
<body>
<form id="form1" runat="server">
<h3>User List</h3>
Email address to Search for:
<asp:TextBox id="EmailTextBox" runat="server" />
<asp:Button id="GoButton" Text=" Go " OnClick="GoButton_OnClick" runat="server" /><br />
<asp:Panel id="NavigationPanel" Visible="False" runat="server">
<table border="0" cellpadding="3" cellspacing="3">
<tr>
<td style="width:100">Page <asp:Label id="CurrentPageLabel" runat="server" />
of <asp:Label id="TotalPagesLabel" runat="server" /></td>
<td style="width:60"><asp:LinkButton id="PreviousButton" Text="< Prev"
OnClick="PreviousButton_OnClick" runat="server" /></td>
<td style="width:60"><asp:LinkButton id="NextButton" Text="Next >"
OnClick="NextButton_OnClick" runat="server" /></td>
</tr>
</table>
</asp:Panel>
<asp:DataGrid id="UserGrid" runat="server"
CellPadding="2" CellSpacing="1"
Gridlines="Both">
<HeaderStyle BackColor="darkblue" ForeColor="white" />
</asp:DataGrid>
</form>
</body>
</html>
注釈
FindUsersByEmailは、電子メール アドレスが構成されたapplicationName
ユーザーに指定されたemailToMatch
アドレスと一致するメンバーシップ ユーザーの一覧を返します。
パラメーターに SqlMembershipProvider 対して LIKE 句を使用して検索を emailToMatch
実行します。 LIKE 句のSQL Serverでサポートされているワイルドカードは、パラメーター値でemailToMatch
使用できます。
返されるFindUsersByEmail結果は、and pageSize
パラメーターによってpageIndex
制約されます。 このパラメーターは pageSize
、返されるオブジェクトの MembershipUser 最大数を識別します MembershipUserCollection。 パラメーターは pageIndex
、返す結果のページを識別します。0 は最初のページを識別します。 パラメーターは totalRecords
、値に out
一致したメンバーシップ ユーザーの合計数に emailToMatch
設定されるパラメーターです。 たとえば、電子メール アドレスの一部または全体に一致するユーザーが emailToMatch
13 人見つかり pageIndex
、値が 1 で a pageSize
が 5 の場合、 MembershipUserCollection 返された 6 番目から 10 番目のユーザーが返されます。 totalRecords
は 13 に設定されます。
emailToMatch
パラメーター値の先頭と末尾の空白はトリムされます。
こちらもご覧ください
適用対象
FindUsersByEmail(String)
指定したメール アドレスと一致するメール アドレスを持つメンバーシップ ユーザーのコレクションを取得します。
public:
static System::Web::Security::MembershipUserCollection ^ FindUsersByEmail(System::String ^ emailToMatch);
public static System.Web.Security.MembershipUserCollection FindUsersByEmail (string emailToMatch);
static member FindUsersByEmail : string -> System.Web.Security.MembershipUserCollection
Public Shared Function FindUsersByEmail (emailToMatch As String) As MembershipUserCollection
パラメーター
- emailToMatch
- String
検索対象の電子メール アドレス。
戻り値
emailToMatch
パラメーターと一致するすべてのユーザーが含まれる MembershipUserCollection。
emailToMatch
パラメーター値の先頭と末尾の空白はトリムされます。
例
次のコード例では、このメソッドを FindUsersByEmail 使用して、ユーザー入力に基づいてメンバーシップ データベースからメンバーシップ ユーザー情報を取得し、結果をデータのページに表示します。
重要
この例には、潜在的なセキュリティ上の脅威であるユーザー入力を受け入れるテキスト ボックスが含まれています。 既定では、ASP.NET Web ページによって、ユーザー入力にスクリプトまたは HTML 要素が含まれていないかどうかが検証されます。 詳細については、「スクリプトによる攻略の概要」を参照してください。
<%@ 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 GoButton_OnClick(object sender, EventArgs args)
{
UserGrid.DataSource = Membership.FindUsersByEmail(EmailTextBox.Text);
UserGrid.DataBind();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Users by Email</title>
</head>
<body>
<form id="form1" runat="server">
<h3>User List</h3>
Email address to Search for:
<asp:TextBox id="EmailTextBox" runat="server" />
<asp:Button id="GoButton" Text=" Go " OnClick="GoButton_OnClick" runat="server" /><br />
<asp:DataGrid id="UserGrid" runat="server"
CellPadding="2" CellSpacing="1"
Gridlines="Both">
<HeaderStyle BackColor="darkblue" ForeColor="white" />
</asp:DataGrid>
</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 GoButton_OnClick(sender As Object, args As EventArgs)
UserGrid.DataSource = Membership.FindUsersByEmail(EmailTextBox.Text)
UserGrid.DataBind()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Users by Email</title>
</head>
<body>
<form id="form1" runat="server">
<h3>User List</h3>
Email address to Search for:
<asp:TextBox id="EmailTextBox" runat="server" />
<asp:Button id="GoButton" Text=" Go " OnClick="GoButton_OnClick" runat="server" /><br />
<asp:DataGrid id="UserGrid" runat="server"
CellPadding="2" CellSpacing="1"
Gridlines="Both">
<HeaderStyle BackColor="darkblue" ForeColor="white" />
</asp:DataGrid>
</form>
</body>
</html>
注釈
FindUsersByEmailは、電子メール アドレスが構成されたapplicationName
ユーザーに指定されたemailToMatch
アドレスと一致するメンバーシップ ユーザーの一覧を返します。
パラメーター SqlMembershipProvider に対して LIKE 句を使用して検索を emailToMatch
実行します。 LIKE 句のSQL Serverでサポートされているワイルドカードは、パラメーター値でemailToMatch
使用できます。