SqlDataSource.FilterExpression Proprietà
In questo articolo
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 o imposta un'espressione di filtro che viene applicata quando il metodo Select(DataSourceSelectArguments) viene chiamato.
public:
property System::String ^ FilterExpression { System::String ^ get(); void set(System::String ^ value); };
public string FilterExpression { get; set; }
member this.FilterExpression : string with get, set
Public Property FilterExpression As String
Stringa che rappresenta un'espressione di filtro applicata quando i dati vengono recuperati usando il metodo Select(DataSourceSelectArguments).
La proprietà FilterExpression è stata impostata e l'oggetto SqlDataSource è in modalità DataReader.
Nell'esempio di codice seguente viene illustrato come recuperare i dati dal database Northwind e filtrarlo usando una FilterExpression stringa e la FilterParameters raccolta. La FilterExpression proprietà viene applicata ogni volta che il Select metodo viene eseguito per recuperare i dati. In questo esempio, contiene FilterExpression un segnaposto per un parametro di filtro, contenuto nella FilterParameters raccolta. Inoltre, il parametro di filtro è un ControlParameter oggetto associato alla SelectedValue proprietà del DropDownList controllo . Poiché la proprietà del DropDownList controllo è impostata su true
, qualsiasi modifica apportata alla selezione per il DropDownList controllo fa sì che la pagina riscriva le informazioni nel server e che il GridView controllo ribindi al controllo origine dati con il nuovo AutoPostBack filtro.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<p>Show all employees with the following title:
<asp:DropDownList
id="DropDownList1"
runat="server"
AutoPostBack="True">
<asp:ListItem Selected="True">Sales Representative</asp:ListItem>
<asp:ListItem>Sales Manager</asp:ListItem>
<asp:ListItem>Vice President, Sales</asp:ListItem>
</asp:DropDownList></p>
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees"
FilterExpression="Title='{0}'">
<FilterParameters>
<asp:ControlParameter Name="Title" ControlId="DropDownList1" PropertyName="SelectedValue"/>
</FilterParameters>
</asp:SqlDataSource>
<p><asp:GridView
id="GridView1"
runat="server"
DataSourceID="SqlDataSource1"
AutoGenerateColumns="False">
<columns>
<asp:BoundField Visible="False" DataField="EmployeeID" />
<asp:BoundField HeaderText="First Name" DataField="FirstName" />
<asp:BoundField HeaderText="Last Name" DataField="LastName" />
</columns>
</asp:GridView></p>
</form>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<p>Show all employees with the following title:
<asp:DropDownList
id="DropDownList1"
runat="server"
AutoPostBack="True">
<asp:ListItem Selected="True">Sales Representative</asp:ListItem>
<asp:ListItem>Sales Manager</asp:ListItem>
<asp:ListItem>Vice President, Sales</asp:ListItem>
</asp:DropDownList></p>
<asp:SqlDataSource
id="SqlDataSource1"
runat="server"
ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees"
FilterExpression="Title='{0}'">
<FilterParameters>
<asp:ControlParameter Name="Title" ControlId="DropDownList1" PropertyName="SelectedValue"/>
</FilterParameters>
</asp:SqlDataSource>
<p><asp:GridView
id="GridView1"
runat="server"
DataSourceID="SqlDataSource1"
AutoGenerateColumns="False">
<columns>
<asp:BoundField Visible="False" DataField="EmployeeID" />
<asp:BoundField HeaderText="First Name" DataField="FirstName" />
<asp:BoundField HeaderText="Last Name" DataField="LastName" />
</columns>
</asp:GridView></p>
</form>
</body>
</html>
Il valore della FilterExpressionFilterExpression proprietà è un'espressione stringa di formato (una stringa elaborata dal String.Format metodo ) che usa i valori nella raccolta per tutti i parametri di sostituzione inclusi nella stringa. La sintassi dell'espressione di filtro è la stessa sintassi accettata dalla RowFilter proprietà , perché l'espressione di filtro viene applicata alla RowFilter proprietà dell'oggetto restituito dall'esecuzione DataView del Select metodo . Per altre informazioni, vedere Expression.
Se si aggiungono parametri alla FilterParameters raccolta, è anche possibile includere segnaposto stringa di formato, "{0}")
ad esempio nell'espressione per sostituire i valori dei parametri. I segnaposto vengono sostituiti in base all'indice del parametro nella FilterParameters raccolta. Se un oggetto nella FilterParameters raccolta è null
, l'oggetto verrà sostituito da una stringa vuota.
È possibile includere i parametri nella FilterExpression proprietà . Se il parametro è una stringa o un tipo di carattere, racchiudere il parametro tra virgolette singole. Le virgolette non sono obbligatorie, se il parametro è un tipo numerico. L'insieme FilterParameters contiene i parametri valutati per i segnaposto presenti nella FilterExpression proprietà .
Il SqlDataSource controllo supporta il filtro dei dati solo quando è DataSet in modalità .
La FilterExpression proprietà delega alla FilterExpression proprietà dell'oggetto SqlDataSourceView associato al SqlDataSource controllo .
Prodotto | Versioni |
---|---|
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: