Udostępnij za pośrednictwem


ObjectDataSourceView.SelectMethod Właściwość

Definicja

Pobiera lub ustawia nazwę metody lub funkcji wywoływanej ObjectDataSourceView przez kontrolkę w celu pobrania danych.

public:
 property System::String ^ SelectMethod { System::String ^ get(); void set(System::String ^ value); };
public string SelectMethod { get; set; }
member this.SelectMethod : string with get, set
Public Property SelectMethod As String

Wartość właściwości

Ciąg reprezentujący nazwę metody lub funkcji używanej ObjectDataSourceView do pobierania danych. Wartością domyślną jest ciąg pusty ("").

Przykłady

Poniższy przykład kodu pokazuje, jak kontrolka GridView może wyświetlać dane przy użyciu ObjectDataSource kontrolki na stronie Web Forms. Element ObjectDataSource identyfikuje częściowo lub w pełni kwalifikowaną nazwę klasy z właściwością TypeName oraz metodę wywoływaną w celu pobrania danych z jej SelectMethod właściwością. W czasie wykonywania obiekt jest tworzony, a metoda jest wywoływana przy użyciu odbicia. Kontrolka GridView jest wyliczana za pośrednictwem IEnumerable kolekcji zwracanej przez SelectMethodelement , a następnie wyświetla dane.

<%@ 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:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1" />

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          typename="Samples.AspNet.CS.EmployeeLogic" />

    </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 - Visual Basic Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1" />

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          typename="Samples.AspNet.VB.EmployeeLogic" />

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

Uwagi

Określona metoda może mieć dowolny podpis metody, ale musi zwrócić jeden z typów wymienionych w poniższej tabeli w celu ObjectDataSource pomyślnego wywołania kontrolki

Typ zwracany Akcja
IEnumerable Element IEnumerable jest zwracany przez metodę Select .
DataTable Element A DataView jest tworzony przy użyciu DataTable metody i zwracanej przez metodę Select .
DataSet Pierwszy DataTable z DataSet nich jest wyodrębniany, a DataView element jest tworzony i zwracany przez metodę Select .
Object Obiekt jest opakowany w jeden element IEnumerable i zwracany przez metodę Select .

Metoda, która jest identyfikowana przez SelectMethod właściwość, może być metodą wystąpienia lub static (Shared w Visual Basic). Jeśli jest to metoda wystąpienia, obiekt biznesowy jest tworzony i niszczony za każdym razem, gdy metoda jest wywoływana SelectMethod . Zdarzenie można obsłużyć ObjectCreated do pracy z obiektem biznesowym, zanim zostanie wywołana metoda określona SelectMethod przez właściwość. Można również obsłużyć ObjectDisposing zdarzenie, które jest wywoływane po wywołaniu metody określonej przez SelectMethod właściwość. (Dispose jest wywoływany tylko wtedy, gdy obiekt biznesowy implementuje IDisposable interfejs). Jeśli metoda jest static metodą (Shared w Visual Basic), obiekt biznesowy nigdy nie jest tworzony i nie można obsłużyć tych zdarzeń.

Jeśli obiekt biznesowy, z którą kontrolka ObjectDataSource współpracuje z implementuje więcej niż jedną metodę lub funkcję o tej samej nazwie (przeciążenia metody), kontrola źródła danych próbuje wywołać poprawną metodę zgodnie z zestawem warunków, w tym parametrami w SelectParameters kolekcji. Jeśli parametry w SelectParameters kolekcji nie są zgodne z podpisem metody określonej przez SelectMethod właściwość, źródło danych zgłasza wyjątek.

Aby uzyskać więcej informacji, zobacz ObjectDataSource.SelectMethod.

Dotyczy

Zobacz też