SqlDataSourceView.FilterParameters Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft eine Auflistung von Parametern ab, die beliebigen Parameterplatzhaltern in der FilterExpression-Zeichenfolge zugeordnet sind.
public:
property System::Web::UI::WebControls::ParameterCollection ^ FilterParameters { System::Web::UI::WebControls::ParameterCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.ParameterCollection FilterParameters { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.FilterParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property FilterParameters As ParameterCollection
Eigenschaftswert
Eine ParameterCollection mit einer Reihe von Parametern, die beliebigen Parameterplatzhaltern in der FilterExpression-Eigenschaft zugeordnet sind.
- Attribute
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Daten aus der Northwind-Datenbank abgerufen und mithilfe der FilterExpression FilterParameters Eigenschaften gefiltert werden. Die FilterExpression Eigenschaft des SqlDataSource Steuerelements wird jederzeit angewendet, wenn die Select Methode ausgeführt wird, um Daten abzurufen. In diesem Beispiel enthält die FilterExpression Eigenschaft einen Platzhalter für einen Filterparameter, der in der FilterParameters Auflistung enthalten ist. Darüber hinaus ist der Filterparameter ein ControlParameter Objekt, das an die SelectedValue Eigenschaft des DropDownList Steuerelements gebunden ist. Da das DropDownList Steuerelement auf die Eigenschaft festgelegt true
istAutoPostBack, führt jede Änderung in der DropDownList Auswahl dazu, dass die Seite Informationen zurück auf den Server und das GridView Steuerelement zurück an das Datenquellensteuerelement mit dem neuen Filter postet.
<!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>
Hinweise
Die Parameter in der Auflistung sind allen Parametern zugeordnet, die in der FilterParameters FilterExpression Eigenschaft angegeben sind. Die Parameterplatzhalter, die im Bereich angegeben sind, werden nach Reihenfolge ausgewertet und mit Parameterobjekten in FilterExpression der FilterParameters Auflistung übereinstimmen, wenn die Select Methode aufgerufen wird.
Wichtig
Sie sollten jeden Filterparameterwert überprüfen, den Sie vom Client erhalten. Die Laufzeit ersetzt einfach den Parameterwert in den Filterausdruck und wendet es auf das DataView Objekt an, das von der Select Methode zurückgegeben wird. Wenn Sie die FilterExpression Eigenschaft als Sicherheitsmaßnahme verwenden, um die Anzahl der zurückgegebenen Elemente zu beschränken, müssen Sie die Parameterwerte überprüfen, bevor die Filterung auftritt.