SqlDataSource.SelectParameters Vlastnost

Definice

Získá kolekci parametrů, která obsahuje parametry, které používá SelectCommand vlastnost z objektu SqlDataSourceView , který je přidružen k ovládacímu SqlDataSource prvku.

public:
 property System::Web::UI::WebControls::ParameterCollection ^ SelectParameters { System::Web::UI::WebControls::ParameterCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.ParameterCollection SelectParameters { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.SelectParameters : System.Web.UI.WebControls.ParameterCollection
Public ReadOnly Property SelectParameters As ParameterCollection

Hodnota vlastnosti

A ParameterCollection , který obsahuje parametry používané SelectCommand vlastností.

Atributy

Příklady

Následující příklad kódu ukazuje, jak načíst data z databáze Northwind v Microsoft SQL Server nastavením SelectCommand vlastnosti na dotaz SQL. Dotaz SQL je parametrizován a zástupný symbol ve SelectCommand vlastnosti se shoduje s objektem ControlParameter , který je přidán do SelectParameters kolekce. Ovládací DropDownList prvek, ke ControlParameter kterému je vázán, funguje jako filtr toho, co se v ovládacím ListBox prvku zobrazuje.

Informace o dalších typech parametrů, které můžete použít, najdete v přehledu Parameter třídy.

Poznámka

Vzhledem k tomu, že parametr se používá v klauzuli WHERE, použití SelectParameters vlastnosti v příkladu kódu je funkčně ekvivalentní použití FilterExpression vlastností a FilterParameters .

<!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><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 LastName FROM Employees WHERE Title = @Title">
          <selectparameters>
              <asp:controlparameter name="Title" controlid="DropDownList1" propertyname="SelectedValue"/>
          </selectparameters>
      </asp:sqldatasource>

      <p><asp:listbox
          id="ListBox1"
          runat="server"
          datasourceid="SqlDataSource1"
          datatextfield="LastName">
      </asp:listbox></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><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 LastName FROM Employees WHERE Title = @Title">
          <selectparameters>
              <asp:controlparameter name="Title" controlid="DropDownList1" propertyname="SelectedValue"/>
          </selectparameters>
      </asp:sqldatasource>

      <p><asp:listbox
          id="ListBox1"
          runat="server"
          datasourceid="SqlDataSource1"
          datatextfield="LastName">
      </asp:listbox></p>

    </form>
  </body>
</html>

Poznámky

SelectCommand Pokud vlastnost obsahuje parametrizovaný dotaz SQL, SelectParameters kolekce obsahuje všechny Parameter objekty, které odpovídají zástupným symbolům parametrů v řetězci SQL.

V závislosti na poskytovateli ADO.NET může být důležité pořadí parametrů v kolekci SelectParameters . Zprostředkovatelé System.Data.OleDb a System.Data.Odbc přidružují parametry v kolekci podle pořadí, ve které se parametry zobrazují v parametrizovaném dotazu SQL. Zprostředkovatel System.Data.SqlClient , který je výchozím zprostředkovatelem SqlDataSource ADO.NET ovládacího prvku, přidruží parametry v kolekci tak, že v dotazu SQL přiřadí název parametru se zástupným aliasem. Další informace o parametrizovaných dotazech a příkazech SQL najdete v tématu Použití parametrů s ovládacím prvku SqlDataSource.

Vlastnost SelectParameters načte SelectParameters vlastnost, která je obsažena objektem SqlDataSourceView , který je přidružen k ovládacímu SqlDataSource prvku.

Důležité

Hodnoty se do parametrů vkládají bez ověření, což představuje potenciální bezpečnostní hrozbu. Událost použijte Selecting k ověření hodnot parametrů před spuštěním dotazu. Další informace najdete v tématu Přehled zneužití skriptů.

Platí pro

Viz také