ObjectDataSource.SelectParameters Vlastnost

Definice

Získá kolekci parametrů, které jsou používány metodou určenou SelectMethod vlastností.

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

Kolekce parametrů, které jsou používány metodou určenou SelectMethod vlastností.

Atributy

Příklady

Následující příklad kódu ukazuje, jak načíst jeden datový záznam pomocí ovládacího prvku ObjectDataSource a zobrazit ho v ovládacím prvku DetailsView . Ovládací ObjectDataSource prvek načte konkrétní záznam zaměstnance voláním GetEmployee metody EmployeeLogic třídy. Metoda GetEmployee vyžaduje parametr ID zaměstnance. Ovládací ObjectDataSource prvek používá QueryStringParameter prvek v kódu k vytvoření objektu QueryStringParameter , který načte hodnotu zadaného parametru řetězce dotazu z adresy URL a předá ji GetEmployee metodě.

Jiné třídy parametrů lze použít k načtení hodnot z jiných zdrojů, jako jsou vlastnosti ovládacího prvku, pole formuláře, soubory cookie, data profilu ASP.NET nebo stav relace. Můžete také použít objekt parametru, který je definován ve značkách, aby bylo možné předat pevně zakódovanou hodnotu do metody select. Další informace o dostupných třídách parametrů najdete v tématu Použití parametrů s ovládacími prvky zdroje dat pro filtrování.

Abyste mohli spustit tento příklad, budete potřebovat následující:

  • Web, který má připojovací řetězec s názvem NorthwindConnection , který se připojuje k databázi Northwind Traders. Další informace najdete v přehledu ObjectDataSource třídy.

  • Třída EmployeeLogic , která je zobrazena jako jeden z příkladů kódu pro ObjectDataSource přehled třídy. Soubor třídy musí být umístěn ve složce App_Code.

  • Ukázkový kód lze spustit jako stránku .aspx. Pokud požádáte o stránku bez parametru řetězce dotazu, zobrazí se chybová zpráva. Pokud o stránku požádáte pomocí řetězce dotazu, například ?empid=1 za názvem souboru .aspx, zobrazí se podrobnosti o požadovaném zaměstnanci.

<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<!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>
    <title>ObjectDataSource - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:detailsview
          id="DetailsView1"
          runat="server"
          datasourceid="ObjectDataSource1">
        </asp:detailsview>

<!-- Security Note: The ObjectDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the Selecting event. -->

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetEmployee"
          typename="Samples.AspNet.CS.EmployeeLogic" >
          <selectparameters>
            <asp:querystringparameter name="EmployeeID" querystringfield="empid" defaultvalue="-1" />
          </selectparameters>
        </asp:objectdatasource>

    </form>
  </body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB" Assembly="Samples.AspNet.VB" %>
<%@ Page language="vb" %>
<!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>
    <title>ObjectDataSource - VB Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:detailsview
          id="DetailsView1"
          runat="server"
          datasourceid="ObjectDataSource1">
        </asp:detailsview>

<!-- Security Note: The ObjectDataSource uses a QueryStringParameter,
     Security Note: which does not perform validation of input from the client.
     Security Note: To validate the value of the QueryStringParameter, handle the Selecting event. -->

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetEmployee"
          typename="Samples.AspNet.VB.EmployeeLogic" >
          <selectparameters>
            <asp:querystringparameter name="EmployeeID" querystringfield="empid" defaultvalue="-1" />
          </selectparameters>
        </asp:objectdatasource>

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

Poznámky

Vlastnost SelectParameters získá SelectParameters vlastnost objektu ObjectDataSourceView , který je přidružen k ovládacímu ObjectDataSource prvku.

Parametry do SelectParameters kolekce přidáte deklarativně pomocí elementu SelectParameters nebo programově v obslužné rutině Selecting události. Za běhu jsou parametry uvedené v elementu SelectParameters přidány do kolekce jako první. Obslužná rutina události pak přidá nebo odebere parametry v kolekci Selecting . Událost Selecting je vyvolána před spuštěním Select metody.

Před spuštěním Select metody musí názvy a typy parametrů, které jsou obsaženy v kolekci SelectParameters , odpovídat podpisu metody, která je určena SelectMethod vlastností. Pokud například metoda select s názvem GetEmployeesByStateAndAge přebírá string jako parametry celé číslo a a musí SelectParameters kolekce obsahovat dva parametry. První parametr se musí přeložit na řetězec a druhý parametr se musí přeložit na celé číslo. Oba parametry lze zadat v kódu v elementu SelectParameters . Případně je můžete přidat do obslužné Selecting rutiny události nebo jeden parametr přidat do kódu a druhý přidat programově.

Další informace najdete v tématu Použití parametrů s ovládacím prvku ObjectDataSource a SelectMethod vlastnosti.

Důležité

V kódu obslužné rutiny Selecting události nebo v metodě, která je určena SelectMethod vlastností, ujistěte se, že jste ověřili hodnotu parametru, která je přijata z klienta.

Platí pro

Viz také