Membership.FindUsersByName Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan kumpulan pengguna keanggotaan di mana nama pengguna berisi nama pengguna yang ditentukan untuk dicocokkan.
Overload
FindUsersByName(String) |
Mendapatkan kumpulan pengguna keanggotaan di mana nama pengguna berisi nama pengguna yang ditentukan untuk dicocokkan. |
FindUsersByName(String, Int32, Int32, Int32) |
Mendapatkan kumpulan pengguna keanggotaan, di halaman data, di mana nama pengguna berisi nama pengguna yang ditentukan untuk dicocokkan. |
FindUsersByName(String)
Mendapatkan kumpulan pengguna keanggotaan di mana nama pengguna berisi nama pengguna yang ditentukan untuk dicocokkan.
public:
static System::Web::Security::MembershipUserCollection ^ FindUsersByName(System::String ^ usernameToMatch);
public static System.Web.Security.MembershipUserCollection FindUsersByName (string usernameToMatch);
static member FindUsersByName : string -> System.Web.Security.MembershipUserCollection
Public Shared Function FindUsersByName (usernameToMatch As String) As MembershipUserCollection
Parameter
- usernameToMatch
- String
Nama pengguna yang akan dicari.
Mengembalikan
MembershipUserCollection yang berisi semua pengguna yang cocok dengan usernameToMatch
parameter .
Spasi di depan usernameToMatch
dan di belakang dipangkas dari nilai parameter.
Pengecualian
usernameToMatch
adalah string kosong.
usernameToMatch
adalah null
.
Contoh
Contoh kode berikut menggunakan FindUsersByName metode untuk mengambil informasi pengguna keanggotaan dari database keanggotaan berdasarkan input pengguna dan menampilkan hasilnya di halaman data.
Penting
Contoh ini berisi kotak teks yang menerima input pengguna, yang merupakan potensi ancaman keamanan. Secara default, ASP.NET halaman Web memvalidasi bahwa input pengguna tidak menyertakan elemen skrip atau HTML. Untuk informasi selengkapnya, lihat Gambaran Umum Eksploitasi Skrip.
<%@ 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.FindUsersByName(UsernameTextBox.Text);
UserGrid.DataBind();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Users</title>
</head>
<body>
<form id="form1" runat="server">
<h3>User List</h3>
Username to Search for:
<asp:TextBox id="UsernameTextBox" 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.FindUsersByName(UsernameTextBox.Text)
UserGrid.DataBind()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Find Users</title>
</head>
<body>
<form id="form1" runat="server">
<h3>User List</h3>
Username to Search for:
<asp:TextBox id="UsernameTextBox" 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>
Keterangan
FindUsersByName mengembalikan daftar pengguna keanggotaan di mana nama pengguna cocok dengan yang disediakan usernameToMatch
untuk yang dikonfigurasi applicationName
.
SqlMembershipProvider melakukan pencariannya menggunakan klausul LIKE terhadap usernameToMatch
parameter . Kartubebas apa pun yang didukung oleh SQL Server dalam klausa LIKE dapat digunakan dalam usernameToMatch
nilai parameter.
Spasi di depan dan di belakang dipangkas dari semua nilai parameter.
Lihat juga
Berlaku untuk
FindUsersByName(String, Int32, Int32, Int32)
Mendapatkan kumpulan pengguna keanggotaan, di halaman data, di mana nama pengguna berisi nama pengguna yang ditentukan untuk dicocokkan.
public:
static System::Web::Security::MembershipUserCollection ^ FindUsersByName(System::String ^ usernameToMatch, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public static System.Web.Security.MembershipUserCollection FindUsersByName (string usernameToMatch, int pageIndex, int pageSize, out int totalRecords);
static member FindUsersByName : string * int * int * int -> System.Web.Security.MembershipUserCollection
Public Shared Function FindUsersByName (usernameToMatch As String, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As MembershipUserCollection
Parameter
- usernameToMatch
- String
Nama pengguna yang akan dicari.
- pageIndex
- Int32
Indeks halaman hasil yang akan dikembalikan.
pageIndex
berbasis nol.
- pageSize
- Int32
Ukuran halaman hasil yang akan dikembalikan.
- totalRecords
- Int32
Jumlah total pengguna yang cocok.
Mengembalikan
MembershipUserCollection yang berisi halaman pageSize
MembershipUser objek yang dimulai pada halaman yang ditentukan oleh pageIndex
.
Spasi di depan usernameToMatch
dan di belakang dipangkas dari nilai parameter.
Pengecualian
usernameToMatch
adalah string kosong.
-atau-
pageIndex
kurang dari nol.
-atau-
pageSize
kurang dari 1.
usernameToMatch
adalah null
.
Contoh
Contoh kode berikut menggunakan FindUsersByName metode untuk mengambil informasi pengguna keanggotaan dari database keanggotaan berdasarkan input pengguna dan menampilkan hasilnya di halaman data.
Penting
Contoh ini berisi kotak teks yang menerima input pengguna, yang merupakan potensi ancaman keamanan. Secara default, ASP.NET halaman Web memvalidasi bahwa input pengguna tidak menyertakan elemen skrip atau HTML. Untuk informasi selengkapnya, lihat Gambaran Umum Eksploitasi Skrip.
<%@ 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.FindUsersByName(UsernameTextBox.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</title>
</head>
<body>
<form id="form1" runat="server">
<h3>User List</h3>
Username to Search for:
<asp:TextBox id="UsernameTextBox" 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.FindUsersByName(UsernameTextBox.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</title>
</head>
<body>
<form id="form1" runat="server">
<h3>User List</h3>
Username to Search for:
<asp:TextBox id="UsernameTextBox" 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>
Keterangan
FindUsersByName mengembalikan daftar pengguna keanggotaan di mana nama pengguna cocok dengan yang disediakan usernameToMatch
untuk yang dikonfigurasi applicationName
.
SqlMembershipProvider melakukan pencariannya menggunakan klausul LIKE terhadap usernameToMatch
parameter . Kartubebas apa pun yang didukung oleh SQL Server dalam klausa LIKE dapat digunakan dalam usernameToMatch
nilai parameter.
Hasil yang dikembalikan oleh FindUsersByName dibatasi oleh pageIndex
parameter dan pageSize
. Parameter pageSize
mengidentifikasi jumlah MembershipUser maksimum objek yang akan dikembalikan di MembershipUserCollection. Parameter pageIndex
mengidentifikasi halaman hasil mana yang akan dikembalikan, di mana 0 mengidentifikasi halaman pertama. Parameter totalRecords
adalah out
parameter yang diatur ke jumlah total pengguna keanggotaan yang cocok dengan usernameToMatch
nilai. Misalnya, jika 13 pengguna ditemukan di mana usernameToMatch
bagian yang cocok dari atau seluruh nama pengguna, dan pageIndex
nilainya adalah 1 dengan pageSize
5, yang MembershipUserCollection dikembalikan akan berisi yang keenam hingga pengguna kesepuluh yang dikembalikan.
totalRecords
akan diatur ke 13.