ObjectDataSource.Select Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera dane z magazynu danych bazowych, wywołując metodę, która jest identyfikowana przez SelectMethod właściwość z parametrami w SelectParameters kolekcji.
public:
System::Collections::IEnumerable ^ Select();
public System.Collections.IEnumerable Select();
member this.Select : unit -> System.Collections.IEnumerable
Public Function Select () As IEnumerable
Zwraca
Lista IEnumerable wierszy danych.
Przykłady
Aby zapoznać się z przykładem kodu, zobacz ObjectDataSource.
Uwagi
Określona metoda może mieć dowolny podpis metody, ale musi zwracać lub pochodzić z jednego z typów wymienionych w poniższej tabeli, aby kontrolka ObjectDataSource mogła ją pomyślnie wywołać.
| Typ zwracany | Action |
|---|---|
| IEnumerable | Element IEnumerable jest zwracany przez metodę Select . |
| DataTable | Element A DataView jest tworzony przy użyciu DataTable metody i zwracanej przez metodę Select . |
| DataView | Element DataView jest zwracany przez metodę Select . |
| DataSet | Pierwszy DataTable z obiektu DataSet jest wyodrębniany, a DataView element jest tworzony i zwracany przez metodę Select . |
| Object | Obiekt jest owinięty w kolekcji jednego elementu 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 określona przez SelectMethod właściwość jest wywoływana, z wyjątkiem tego, że to samo wystąpienie jest używane do wywoływania metody określonej przez SelectMethod właściwość i metody określonej przez SelectCountMethod właściwość. Metoda Select zwraca IEnumerable interfejs. Jednak aby włączyć scenariusze buforowania i filtrowania, zwracana wartość musi być obiektem DataSet .
DataSet Chociaż klasa nie implementuje interfejsuIEnumerable, ObjectDataSource kontrolka automatycznie wyodrębnia kontrolkę domyślnąDataView, która implementuje IEnumerableelement .
Przed wykonaniem Select operacji wywoływana OnSelecting jest metoda w celu wywołania Selecting zdarzenia. Zdarzenie można obsłużyć Selecting w celu zbadania wartości parametrów i wykonania dowolnego przetwarzania wstępnego przed operacją Select . Aby wykonać operację pobierania danych, ObjectDataSourceView obiekt używa odbicia w celu utworzenia wystąpienia obiektu, które jest identyfikowane przez TypeName właściwość. Następnie wywołuje metodę, która jest identyfikowana przez SelectMethod właściwość, przy użyciu wszelkich skojarzonych SelectParameters właściwości. Po zakończeniu Select operacji wywoływana OnSelected jest metoda w celu wywołania Selected zdarzenia. Zdarzenie można obsłużyć Selected w celu zbadania wszystkich wartości zwracanych, parametrów wyjściowych i wyjątków oraz wykonania dowolnego przetwarzania końcowego.
SelectMethod Jeśli właściwość zwraca DataSetobiekt , DataTablelub DataView i buforowanie jest włączone, ObjectDataSource pobiera dane z pamięci podręcznej i zapisuje je w pamięci podręcznej Select podczas operacji. Pamięć podręczna jest tworzona, odrzucana lub odświeżona na podstawie zachowania buforowania określonego przez kombinację CacheDuration właściwości i CacheExpirationPolicy .
SelectMethod Jeśli właściwość zwraca DataSet obiekt lubDataTable, a FilterExpression właściwość została określona, jest obliczana z dowolnymi podanymi FilterParameters właściwościami, a wynikowy filtr jest stosowany do listy danych podczas Select operacji.
Metoda Select deleguje do Select metody ObjectDataSourceView , która jest skojarzona z kontrolką ObjectDataSource .
Aby uzyskać więcej informacji na temat scalania parametrów, okresu istnienia obiektu i rozpoznawania metod, zobacz SelectMethod.
kontrolki Data-Bound
Gdy kontrolka ObjectDataSource jest skojarzona z kontrolką powiązaną z danymi, taką jak kontrolka GridView , nie jest konieczne wywołanie Select metody z kodu strony. Metoda Select jest wywoływana bezpośrednio przez kontrolkę powiązaną z danymi.