Membership.FindUsersByName Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene un insieme degli utenti di appartenenza in cui il nome utente contiene il nome specificato di cui verificare la corrispondenza.
Overload
FindUsersByName(String) |
Ottiene un insieme degli utenti di appartenenza in cui il nome utente contiene il nome specificato di cui verificare la corrispondenza. |
FindUsersByName(String, Int32, Int32, Int32) |
Ottiene e visualizza in una pagina di dati un insieme degli utenti di appartenenza in cui il nome utente contiene il nome utente specificato di cui verificare la corrispondenza. |
FindUsersByName(String)
Ottiene un insieme degli utenti di appartenenza in cui il nome utente contiene il nome specificato di cui verificare la corrispondenza.
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
Parametri
- usernameToMatch
- String
Nome utente da cercare.
Restituisce
Oggetto MembershipUserCollection contenente tutti gli utenti il cui indirizzo di posta elettronica corrisponde a quello indicato nel parametro usernameToMatch
.
Gli spazi iniziali e finali sono rimossi dal valore del parametro usernameToMatch
.
Eccezioni
Il parametro usernameToMatch
è una stringa vuota.
usernameToMatch
è null
.
Esempio
Nell'esempio di codice seguente viene utilizzato il FindUsersByName metodo per recuperare le informazioni sull'utente di appartenenza dal database di appartenenza in base all'input dell'utente e vengono visualizzati i risultati in pagine di dati.
Importante
Questo esempio contiene una casella di testo che accetta l'input dell'utente, che rappresenta una potenziale minaccia per la sicurezza. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.
<%@ 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>
Commenti
FindUsersByName restituisce un elenco di utenti di appartenenza in cui il nome utente corrisponde all'oggetto fornito usernameToMatch
per l'oggetto configurato applicationName
.
Esegue SqlMembershipProvider la ricerca utilizzando una clausola LIKE sul usernameToMatch
parametro . Qualsiasi carattere jolly supportato da SQL Server nelle clausole LIKE può essere usato nel valore del usernameToMatch
parametro.
Gli spazi iniziali e finali vengono eliminati da tutti i valori dei parametri.
Vedi anche
Si applica a
FindUsersByName(String, Int32, Int32, Int32)
Ottiene e visualizza in una pagina di dati un insieme degli utenti di appartenenza in cui il nome utente contiene il nome utente specificato di cui verificare la corrispondenza.
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
Parametri
- usernameToMatch
- String
Nome utente da cercare.
- pageIndex
- Int32
Indice della pagina di risultati da restituire.
pageIndex
è in base zero.
- pageSize
- Int32
Dimensione della pagina di risultati da restituire.
- totalRecords
- Int32
Numero totale di utenti individuati.
Restituisce
Oggetto MembershipUserCollection contenente una pagina di oggetti pageSize
MembershipUser con inizio alla pagina specificata da pageIndex
.
Gli spazi iniziali e finali sono rimossi dal valore del parametro usernameToMatch
.
Eccezioni
Il parametro usernameToMatch
è una stringa vuota.
-oppure-
pageIndex
è minore di zero.
-oppure-
pageSize
è minore di 1.
usernameToMatch
è null
.
Esempio
Nell'esempio di codice seguente viene utilizzato il FindUsersByName metodo per recuperare le informazioni sull'utente di appartenenza dal database di appartenenza in base all'input dell'utente e vengono visualizzati i risultati in pagine di dati.
Importante
Questo esempio contiene una casella di testo che accetta l'input dell'utente, che rappresenta una potenziale minaccia per la sicurezza. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite script.
<%@ 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>
Commenti
FindUsersByName restituisce un elenco di utenti di appartenenza in cui il nome utente corrisponde all'oggetto fornito usernameToMatch
per l'oggetto configurato applicationName
.
Esegue SqlMembershipProvider la ricerca utilizzando una clausola LIKE sul usernameToMatch
parametro . Qualsiasi carattere jolly supportato da SQL Server nelle clausole LIKE può essere usato nel valore del usernameToMatch
parametro.
I risultati restituiti da FindUsersByName sono vincolati dai pageIndex
parametri e pageSize
. Il pageSize
parametro identifica il numero massimo di MembershipUser oggetti da restituire in MembershipUserCollection. Il pageIndex
parametro identifica la pagina dei risultati da restituire, dove 0 identifica la prima pagina. Il totalRecords
parametro è un out
parametro impostato sul numero totale di utenti di appartenenza corrispondenti al usernameToMatch
valore . Ad esempio, se sono stati trovati 13 utenti in cui usernameToMatch
corrispondeva parte o l'intero nome utente e il pageIndex
valore era 1 con un pageSize
valore pari a 5, il MembershipUserCollection restituito conterrà il sesto al decimo utente restituito.
totalRecords
sarebbe impostato su 13.