Поделиться через


ObjectDataSourceView.SelectMethod Свойство

Определение

Возвращает или задает имя метода или функции, вызываемой ObjectDataSourceView элементом управления для получения данных.

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

Значение свойства

Строка, представляющая имя метода или функции, которая ObjectDataSourceView используется для извлечения данных. Значение по умолчанию — пустая строка ("").

Примеры

В следующем примере кода показано, как GridView элемент управления может отображать данные с помощью ObjectDataSource элемента управления на странице веб-форм. Определяет ObjectDataSource частично или полное имя класса со своим TypeName свойством и методом, который вызывается для получения данных с его SelectMethod свойством. Во время выполнения объект создается, а метод вызывается с помощью отражения. Элемент GridView управления перечисляет IEnumerable коллекцию, возвращаемую этим SelectMethodэлементом, а затем отображает данные.

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

Комментарии

Указанный метод может иметь любую сигнатуру метода, но должен возвращать один из типов, перечисленных в следующей таблице, чтобы ObjectDataSource элемент управления успешно вызывал его.

Тип возвращаемого значения Действие
IEnumerable Возвращается IEnumerable методом Select .
DataTable Создается DataView с помощью DataTable метода и возвращается Select .
DataSet Первая DataTable из DataSet них извлекается и DataView создается и возвращается методом Select .
Object Объект упаковывается в один элемент IEnumerable и возвращается методом Select .

Метод, который определяется свойством SelectMethod , может быть методом экземпляра или static методом (Shared в Visual Basic). Если это метод экземпляра, бизнес-объект создается и уничтожается при каждом вызове SelectMethod метода. Событие можно обрабатывать ObjectCreated для работы с бизнес-объектом перед вызовом метода, указанного свойством SelectMethod . Вы также можете обрабатывать ObjectDisposing событие, которое вызывается после вызова метода, указанного свойством SelectMethod . (Dispose вызывается только в том случае, если бизнес-объект реализует IDisposable интерфейс.) Если метод является методом static (Shared в Visual Basic), бизнес-объект никогда не создается и не может обрабатывать эти события.

Если бизнес-объект, ObjectDataSource с которым работает элемент управления, реализует несколько методов или функций с одинаковым именем (перегрузками метода), система управления версиями данных пытается вызвать правильную в соответствии с набором условий, включая параметры в SelectParameters коллекции. Если параметры в SelectParameters коллекции не совпадают с сигнатурой метода, указанного SelectMethod свойством, источник данных создает исключение.

Дополнительные сведения см. в разделе ObjectDataSource.SelectMethod.

Применяется к

См. также раздел