ObjectDataSource.Select 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
通过使用集合中的SelectParameters参数调用属性标识SelectMethod的方法,从基础数据存储中检索数据。
public:
System::Collections::IEnumerable ^ Select();
public System.Collections.IEnumerable Select();
member this.Select : unit -> System.Collections.IEnumerable
Public Function Select () As IEnumerable
返回
IEnumerable数据行的列表。
示例
有关代码示例,请参阅 ObjectDataSource。
注解
指定的方法可能具有任何方法签名,但它必须返回或派生自下表中列出的类型之一,以便 ObjectDataSource 控件成功调用它。
| 返回类型 | Action |
|---|---|
| IEnumerable | 方法 IEnumerable 返回 Select 该参数。 |
| DataTable | A DataView 是使用 DataTable 该方法返回的并返回的 Select 。 |
| DataView | 方法 DataView 返回 Select 该参数。 |
| DataSet | 提取第一DataTable个DataSet项,由该方法创建并返回 Select aDataView。 |
| Object | 该对象包装在一个元素 IEnumerable 集合中,并由 Select 该方法返回。 |
由属性标识 SelectMethod 的方法可以是实例方法或 static (Shared 在 Visual Basic 中) 方法。 如果是实例方法,则每次调用属性指定的 SelectMethod 方法时,都会创建和销毁业务对象,只不过同一实例用于调用由属性指定的 SelectMethod 方法和属性指定的 SelectCountMethod 方法。 该方法 Select 返回接口 IEnumerable 。 但是,若要启用缓存和筛选方案,返回值必须是对象 DataSet 。
DataSet虽然类不实现IEnumerable接口,但ObjectDataSource控件会自动提取实现IEnumerable该接口的默认DataView控件。
在执行 Select 操作之前, OnSelecting 将调用该方法以引发 Selecting 事件。 可以处理 Selecting 事件以检查参数的值,并在操作之前 Select 执行任何预处理。 若要执行数据检索操作,该 ObjectDataSourceView 对象使用反射来创建由 TypeName 属性标识的对象实例。 然后,它使用任何关联的SelectParameters属性调用由属性标识SelectMethod的方法。 Select操作完成后,OnSelected将调用该方法以引发Selected事件。 可以处理 Selected 事件以检查任何返回值、输出参数和异常,以及执行任何后期处理。
SelectMethod如果属性返回启用了或DataSetDataViewDataTable对象和缓存,则ObjectDataSource从中检索数据并在操作期间Select将数据保存到缓存。 缓存是根据组合和CacheExpirationPolicy属性指定的CacheDuration缓存行为创建的、放弃的或刷新的。
SelectMethod如果属性返回或DataSetDataTable对象,并且FilterExpression已指定属性,则会使用任何提供FilterParameters的属性对其进行计算,并在操作过程中Select将生成的筛选器应用于数据列表。
该方法Select委托给Select与ObjectDataSource控件关联的方法ObjectDataSourceView。
有关参数合并、对象生存期和方法解析的详细信息,请参阅 SelectMethod。
Data-Bound 控件
ObjectDataSource当控件与数据绑定控件(如GridView控件)关联时,无需从页面代码调用Select该方法。 该方法 Select 由数据绑定控件直接调用。