ObjectDataSource.SelectParameters Właściwość

Definicja

Pobiera kolekcję parametrów, które są używane przez metodę określoną przez SelectMethod Właściwość.Gets a collection of parameters that are used by the method specified by the SelectMethod property.

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

Wartość właściwości

ParameterCollection

Kolekcja parametrów, które są używane przez metodę określoną przez SelectMethod Właściwość.A collection of parameters that are used by the method specified by the SelectMethod property.

Atrybuty

Przykłady

Poniższy przykład kodu demonstruje sposób pobierania pojedynczego rekordu danych przy użyciu ObjectDataSource kontrolki i wyświetlania jej w DetailsView kontrolce.The following code example demonstrates how to retrieve a single data record using an ObjectDataSource control and display it in a DetailsView control. ObjectDataSourceFormant Pobiera określony rekord pracownika przez wywołanie GetEmployee metody EmployeeLogic klasy.The ObjectDataSource control retrieves a specific employee record by calling the GetEmployee method of the EmployeeLogic class. GetEmployeeMetoda wymaga PARAMETRU identyfikatora pracownika.The GetEmployee method requires an employee ID parameter. ObjectDataSourceKontrolka używa QueryStringParameter elementu w znacznikach, aby utworzyć QueryStringParameter obiekt, który będzie pobierać wartość określonego parametru ciągu zapytania z adresu URL i przekazać go do GetEmployee metody.The ObjectDataSource control uses a QueryStringParameter element in markup to create a QueryStringParameter object that will retrieve the value of a specified query-string parameter from the URL and pass it to the GetEmployee method.

Inne klasy parametrów mogą służyć do pobierania wartości z innych źródeł, takich jak właściwości kontrolki, pola formularzy, pliki cookie, dane profilu ASP.NET lub stan sesji.Other parameter classes can be used to retrieve values from other sources, such as control properties, form fields, cookies, ASP.NET profile data, or session state. Można również użyć obiektu parametru, który jest zdefiniowany w znaczniku, aby przekazać zakodowaną wartość do metody Select.You can also use a parameter object that is defined in markup in order to pass a hard-coded value to the select method. Aby uzyskać więcej informacji na temat dostępnych klas parametrów, zobacz Używanie parametrów z kontrolkami źródła danych do filtrowania.For more information about parameter classes that are available, see Using Parameters with Data Source Controls for Filtering.

Do uruchomienia tego przykładu potrzebne są następujące elementy:To run this example, you will need the following:

  • Witryna sieci Web z parametrami połączenia o nazwie NorthwindConnection , które nawiązują połączenie z bazą danych Northwind Traders.A Web site that has a connection string named NorthwindConnection that connects to the Northwind Traders database. Aby uzyskać więcej informacji, zobacz ObjectDataSource Omówienie klasy.For more information, see the ObjectDataSource class overview.

  • EmployeeLogicKlasa, która jest wyświetlana jako jeden z przykładów kodu dla ObjectDataSource omówienia klasy.The EmployeeLogic class that is shown as one of the code examples for the ObjectDataSource class overview. Plik klasy musi znajdować się w folderze App_Code.The class file must be located in the App_Code folder.

  • Przykładowy kod można uruchomić jako stronę. aspx.The sample code can be run as an .aspx page. Jeśli zażądasz strony bez parametru ciągu zapytania, zostanie wyświetlony komunikat o błędzie.If you request the page without a query-string parameter, an error message is displayed. Jeśli zażądasz strony przy użyciu ciągu zapytania, takiego jak ?empid=1 po nazwie pliku. aspx, zobaczysz szczegóły dotyczące żądanego pracownika.If you request the page using a query string such as ?empid=1 after the name of the .aspx file, you will see the details for the requested employee.

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

Uwagi

SelectParametersWłaściwość pobiera SelectParameters Właściwość ObjectDataSourceView obiektu, który jest skojarzony z ObjectDataSource kontrolką.The SelectParameters property gets the SelectParameters property of the ObjectDataSourceView object that is associated with the ObjectDataSource control.

Parametry do SelectParameters kolekcji można deklaratywnie dodać przy użyciu SelectParameters elementu lub programowo w programie obsługi Selecting zdarzenia.You add parameters to the SelectParameters collection declaratively by using the SelectParameters element or programmatically in the handler for the Selecting event. W czasie wykonywania, parametry wymienione w SelectParameters elemencie są najpierw dodawane do kolekcji.At run time, parameters listed in the SelectParameters element are added to the collection first. Parametry w kolekcji są następnie dodawane lub usuwane przez program obsługi Selecting zdarzenia.Parameters in the collection are then added or removed by the handler for the Selecting event. SelectingZdarzenie jest wywoływane przed Select uruchomieniem metody.The Selecting event is raised before the Select method is run.

Przed Select uruchomieniem metody nazwy i typy parametrów, które są zawarte w SelectParameters kolekcji, muszą być zgodne z podpisem metody, która jest określona przez SelectMethod Właściwość.Before the Select method is run, the names and types of the parameters that are contained in the SelectParameters collection must match the signature of the method that is specified by the SelectMethod property. Na przykład jeśli metoda SELECT GetEmployeesByStateAndAge ma nazwę przyjmuje string liczbę całkowitą jako parametry, SelectParameters Kolekcja musi zawierać dwa parametry.For example, if a select method named GetEmployeesByStateAndAge takes a string and an integer as parameters, the SelectParameters collection must contain two parameters. Pierwszy parametr musi być rozpoznawany jako ciąg, a drugi parametr musi być rozpoznawany jako liczba całkowita.The first parameter must resolve to a string and the second parameter must resolve to an integer. Oba parametry można określić w znacznikach w SelectParameters elemencie.Both parameters can be specified in markup in the SelectParameters element. Alternatywnie mogą być dodawane do programu Selecting obsługi zdarzeń lub można dodać jeden parametr w znaczniku, a drugi można dodać programowo.Alternatively, they can be can be added in the Selecting event handler, or one parameter can be added in markup and the other one can be added programmatically.

Aby uzyskać więcej informacji, zobacz Używanie parametrów z kontrolką ObjectDataSource i SelectMethod właściwością.For more information, see Using Parameters with the ObjectDataSource Control and the SelectMethod property.

Ważne

W kodzie programu Selecting obsługi zdarzeń lub w metodzie, która jest określona przez SelectMethod Właściwość, upewnij się, że wszystkie wartości parametrów otrzymane od klienta są sprawdzane.In the code for the Selecting event handler or in the method that is specified by the SelectMethod property, make sure that you validate any parameter value that is received from the client.

Dotyczy

Zobacz też