Membership.FindUsersByName Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u een verzameling lidmaatschapsgebruikers op waarvan de gebruikersnaam de opgegeven gebruikersnaam bevat die overeenkomt.
Overloads
| Name | Description |
|---|---|
| FindUsersByName(String) |
Hiermee haalt u een verzameling lidmaatschapsgebruikers op waarvan de gebruikersnaam de opgegeven gebruikersnaam bevat die overeenkomt. |
| FindUsersByName(String, Int32, Int32, Int32) |
Hiermee wordt een verzameling lidmaatschapsgebruikers opgehaald, op een pagina met gegevens, waarbij de gebruikersnaam de opgegeven gebruikersnaam bevat die overeenkomt. |
FindUsersByName(String)
Hiermee haalt u een verzameling lidmaatschapsgebruikers op waarvan de gebruikersnaam de opgegeven gebruikersnaam bevat die overeenkomt.
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
Parameters
- usernameToMatch
- String
De gebruikersnaam die moet worden gezocht.
Retouren
Een MembershipUserCollection die alle gebruikers bevat die overeenkomen met de usernameToMatch parameter.
Voorloop- en volgspaties worden afgekapt van de usernameToMatch parameterwaarde.
Uitzonderingen
usernameToMatch is een lege tekenreeks.
usernameToMatch is null.
Voorbeelden
In het volgende codevoorbeeld wordt de FindUsersByName methode gebruikt om lidmaatschapsgebruikersgegevens op te halen uit de lidmaatschapsdatabase op basis van gebruikersinvoer en worden de resultaten weergegeven op pagina's met gegevens.
Important
Dit voorbeeld bevat een tekstvak dat gebruikersinvoer accepteert. Dit is een mogelijke beveiligingsrisico. Standaard valideren ASP.NET webpagina's dat gebruikersinvoer geen script- of HTML-elementen bevat. Zie Overzicht van Script Exploits voor meer informatie.
<%@ 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>
Opmerkingen
FindUsersByName retourneert een lijst met lidmaatschapsgebruikers waarbij de gebruikersnaam overeenkomt met de opgegeven usernameToMatch naam voor de geconfigureerde applicationName.
De SqlMembershipProvider zoekopdracht wordt uitgevoerd met behulp van een LIKE-component voor de usernameToMatch parameter. Jokertekens die worden ondersteund door SQL Server in LIKE-componenten kunnen worden gebruikt in de parameterwaarde usernameToMatch.
Voorloop- en volgspaties worden afgekapt van alle parameterwaarden.
Zie ook
Van toepassing op
FindUsersByName(String, Int32, Int32, Int32)
Hiermee wordt een verzameling lidmaatschapsgebruikers opgehaald, op een pagina met gegevens, waarbij de gebruikersnaam de opgegeven gebruikersnaam bevat die overeenkomt.
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
Parameters
- usernameToMatch
- String
De gebruikersnaam die moet worden gezocht.
- pageIndex
- Int32
De index van de pagina met resultaten die moeten worden geretourneerd.
pageIndex is gebaseerd op nul.
- pageSize
- Int32
De grootte van de pagina met resultaten die moeten worden geretourneerd.
- totalRecords
- Int32
Het totale aantal overeenkomende gebruikers.
Retouren
Een MembershipUserCollection met een pagina met pageSizeMembershipUser objecten die beginnen op de pagina die is opgegeven door pageIndex.
Voorloop- en volgspaties worden afgekapt van de usernameToMatch parameterwaarde.
Uitzonderingen
usernameToMatch is een lege tekenreeks.
– of –
pageIndex is kleiner dan nul.
– of –
pageSize is kleiner dan 1.
usernameToMatch is null.
Voorbeelden
In het volgende codevoorbeeld wordt de FindUsersByName methode gebruikt om lidmaatschapsgebruikersgegevens op te halen uit de lidmaatschapsdatabase op basis van gebruikersinvoer en worden de resultaten weergegeven op pagina's met gegevens.
Important
Dit voorbeeld bevat een tekstvak dat gebruikersinvoer accepteert. Dit is een mogelijke beveiligingsrisico. Standaard valideren ASP.NET webpagina's dat gebruikersinvoer geen script- of HTML-elementen bevat. Zie Overzicht van Script Exploits voor meer informatie.
<%@ 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>
Opmerkingen
FindUsersByName retourneert een lijst met lidmaatschapsgebruikers waarbij de gebruikersnaam overeenkomt met de opgegeven usernameToMatch naam voor de geconfigureerde applicationName.
De SqlMembershipProvider zoekopdracht wordt uitgevoerd met behulp van een LIKE-component voor de usernameToMatch parameter. Jokertekens die worden ondersteund door SQL Server in LIKE-componenten kunnen worden gebruikt in de parameterwaarde usernameToMatch.
De resultaten die worden geretourneerd door FindUsersByName , worden beperkt door de pageIndex en pageSize parameters. De pageSize parameter identificeert het maximum aantal MembershipUser objecten dat moet worden geretourneerd in de MembershipUserCollection. De pageIndex parameter identificeert welke pagina met resultaten moet worden geretourneerd, waarbij 0 de eerste pagina identificeert. De totalRecords parameter is een out parameter die is ingesteld op het totale aantal lidmaatschapsgebruikers dat overeenkomt met de usernameToMatch waarde. Als er bijvoorbeeld 13 gebruikers zijn gevonden waarbij usernameToMatch het overeenkomende deel van of de volledige gebruikersnaam en de pageIndex waarde 1 is met een pageSize van 5, bevat de MembershipUserCollection geretourneerde waarde de zesde tot en met de tiende gebruikers die zijn geretourneerd.
totalRecords wordt ingesteld op 13.