ObjectDataSource.SelectParameters Tulajdonság

Definíció

Lekéri a tulajdonság által megadott metódus által használt paraméterek gyűjteményét SelectMethod .

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

Tulajdonság értéke

A tulajdonság által SelectMethod megadott metódus által használt paraméterek gyűjteménye.

Attribútumok

Példák

Az alábbi példakód bemutatja, hogyan kér le egyetlen adatrekordot egy ObjectDataSource vezérlőelem használatával, és hogyan jelenítheti meg azt egy DetailsView vezérlőben. A ObjectDataSource vezérlő egy adott alkalmazotti rekordot kér le az GetEmployeeEmployeeLogic osztály metódusának meghívásával. A GetEmployee metódushoz egy alkalmazotti azonosító paraméter szükséges. A ObjectDataSource vezérlő a korrektúra egyik QueryStringParameter elemével hoz létre egy QueryStringParameter objektumot, amely lekéri egy adott lekérdezési sztring paraméter értékét az URL-címből, és átadja a GetEmployee metódusnak.

Más paraméterosztályokkal más forrásokból is lekérhetők értékek, például vezérlőtulajdonságok, űrlapmezők, cookie-k, ASP.NET profiladatok vagy munkamenet-állapot. A korrektúrában definiált paraméterobjektumokat is használhatja annak érdekében, hogy egy kódolt értéket átadjon a kiválasztási módszernek. Az elérhető paraméterosztályokról további információt a Paraméterek használata adatforrás-vezérlőkkel szűréshez című témakörben talál.

A példa futtatásához a következőkre lesz szüksége:

  • Egy kapcsolati karakterlánc nevű NorthwindConnection nevű webhely, amely a Northwind Traders adatbázishoz csatlakozik. További információkért tekintse meg az osztály áttekintését ObjectDataSource .

  • Az EmployeeLogic osztály áttekintéséhez az egyik példakódként ObjectDataSource megjelenő osztály. Az osztályfájlnak a App_Code mappában kell lennie.

  • A mintakód .aspx lapként futtatható. Ha lekérdezési sztringparaméter nélkül kéri le a lapot, hibaüzenet jelenik meg. Ha a lapot lekérdezési sztring használatával kéri le, például ?empid=1 a .aspx fájl neve után, a kért alkalmazott adatait fogja látni.

<%@ 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>

Megjegyzések

A SelectParameters tulajdonság lekéri a SelectParametersObjectDataSourceView vezérlőelemhez társított objektum tulajdonságát ObjectDataSource .

Deklaratív módon adhat hozzá paramétereket a SelectParameters gyűjteményhez az SelectParameters elem használatával vagy programozott módon az esemény kezelőjében Selecting . Futásidőben az SelectParameters elemben felsorolt paramétereket a rendszer először hozzáadja a gyűjteményhez. A gyűjtemény paramétereit ezután hozzáadja vagy eltávolítja az esemény kezelője Selecting . Az Selecting esemény a metódus futtatása előtt Select lesz előállítva.

A Select metódus futtatása előtt a gyűjteményben SelectParameters található paraméterek nevének és típusának meg kell egyeznie a tulajdonság által megadott metódus aláírásával SelectMethod . Ha például egy névvel ellátott GetEmployeesByStateAndAge kiválasztási módszer paraméterként egy string és egy egész számot vesz igénybe, a SelectParameters gyűjteménynek két paramétert kell tartalmaznia. Az első paraméternek sztringre kell feloldania, a második paraméternek pedig egész számra kell feloldania. Mindkét paraméter megadható az SelectParameters elem jelölőjében. Másik lehetőségként hozzáadhatja őket az Selecting eseménykezelőben, vagy egy paraméter hozzáadható korrektúraként, a másik pedig programozott módon.

További információ: Paraméterek használata az ObjectDataSource-vezérlővel és a SelectMethod tulajdonsággal.

Important

Az eseménykezelő kódjában Selecting vagy a tulajdonság által SelectMethod megadott metódusban ellenőrizze az ügyféltől kapott paraméterértéket.

A következőre érvényes:

Lásd még