ObjectDataSourceView::ExecuteSelect Method
Retrieves data from the object that is identified by the TypeName property by calling the method that is identified by the SelectMethod property and passing any values in the SelectParameters collection.
Assembly: System.Web (in System.Web.dll)
protected public: virtual IEnumerable^ ExecuteSelect( DataSourceSelectArguments^ arguments ) override
Parameters
- arguments
- Type: System.Web.UI::DataSourceSelectArguments
A DataSourceSelectArguments used to request operations on the data beyond basic data retrieval.
| Exception | Condition |
|---|---|
| NotSupportedException | The arguments passed to the ExecuteSelect method specify that the data source should perform some additional work while retrieving data to enable paging or sorting through the retrieved data, but the data source control does not support the requested capability. - or - The object returned by the ExecuteSelect method is not a DataSet or DataTable, and caching is enabled. Only DataSet and DataTable objects can be cached for the ObjectDataSourceView control. - or - Both caching and client impersonation are enabled. The ObjectDataSource does not support caching when client impersonation is enabled. |
| InvalidOperationException | The object returned by the ExecuteSelect method is a DataSet, but has no tables in its Tables collection. - or - The EnablePaging property is set to true, but the StartRowIndexParameterName and MaximumRowsParameterName properties are not set. |
The ObjectDataSourceView class implements the inherited ExecuteSelect method to retrieve data using a business object. Page developers and data-bound control authors do not call the ExecuteSelect method directly; instead, use the publicly exposed Select method.
The specified method can have any method signature, but must return one of the types for the ObjectDataSource control that are listed in the following table to call it successfully.
Return type | Action |
|---|---|
The IEnumerable is returned by the Select method. | |
A DataView is created using the DataTable and returned by the Select method. | |
The first DataTable of the DataSet is extracted and a DataView is created and returned by the Select method. | |
The object is wrapped in a one-element IEnumerable and returned by the Select method. |
Before the data retrieval is performed, the OnSelecting method is called to raise the Selecting event. You can handle this event to examine the values of the parameters and to perform any preprocessing before an operation.
To perform a select operation, the ObjectDataSourceView control uses reflection to call the method that is identified by the SelectMethod property and any associated parameters that are in the SelectParameters collection, and then executes it. After the operation completes, the OnSelected method is called to raise the Selected event. You can handle this event to examine any return values and error codes, and to perform any post-processing.
If the Select method returns a DataSet object and caching is enabled, the ObjectDataSourceView retrieves data from and saves data to the cache during the operation. The cache is created, discarded, or refreshed based on the caching behavior that is specified by the combination of the CacheDuration and CacheExpirationPolicy properties.
If the Select method returns a DataSet object and a FilterExpression property has been specified, it is evaluated along with any supplied FilterParameters properties and the resulting filter is applied to the list of data during the Select operation.
For information on returning the number of rows selected, see Select.
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.