SqlDataSourceView.ExecuteSelect(DataSourceSelectArguments) 方法

定义

使用 SelectCommand SQL 字符串以及 SelectParameters 集合中的所有参数从基础数据库中检索数据。

protected public:
 override System::Collections::IEnumerable ^ ExecuteSelect(System::Web::UI::DataSourceSelectArguments ^ arguments);
protected internal override System.Collections.IEnumerable ExecuteSelect (System.Web.UI.DataSourceSelectArguments arguments);
override this.ExecuteSelect : System.Web.UI.DataSourceSelectArguments -> System.Collections.IEnumerable
Protected Friend Overrides Function ExecuteSelect (arguments As DataSourceSelectArguments) As IEnumerable

参数

arguments
DataSourceSelectArguments

用于请求对数据执行基本数据检索操作以外的操作的 DataSourceSelectArguments 对象。

返回

一个数据行的 IEnumerable 列表。

例外

传递给 ExecuteSelect(DataSourceSelectArguments) 方法的 arguments 指定数据源在检索数据时应执行一些附加操作,以便对检索到的数据启用分页或排序,但此数据源控件不支持请求的功能。

- 或 -

启用了缓存,但没有将数据源的 DataSourceMode 属性设置为 DataSet

- 或 -

设置了 SortParameterName 属性,但是没有将 CommandType 设置为 StoredProcedure

数据源无法建立数据库连接。

- 或 -

启用了缓存,但内部缓存和命令类型不匹配。

注解

SqlDataSourceView 实现继承 ExecuteSelect 的方法以从数据库检索数据。 页面开发人员和数据绑定控件作者不会直接调用 ExecuteSelect 方法;而是使用公开的方法 Select

在执行数据检索之前, OnSelecting 将调用 方法来引发 Selecting 事件。 可以处理此事件以检查参数的值,并在检索数据之前执行任何预处理。

为了执行操作,SqlDataSourceView对象使用SelectCommand文本和任何关联的 SelectParameters生成对象DbCommand,并针对基础数据库执行该对象。 操作完成后, OnSelected 将调用 方法来引发 Selected 事件。 可以处理此事件来检查任何返回值、错误代码,并执行任何后期处理。

如果 设置为 ,则ExecuteSelect方法返回 DataView 对象;如果 设置为 DataReaderIDataReaderDataSourceMode返回 对象。DataSetDataSourceMode IDataReader读取完数据后关闭 对象。

DataSourceMode如果 设置为 DataSet 并启用缓存,则会SqlDataSourceView在数据操作期间从中检索数据并将数据保存到缓存。 根据 和 CacheExpirationPolicy 属性的组合CacheDuration指定的缓存行为创建、丢弃或刷新缓存。

重要

在 Windows 身份验证 下使用客户端模拟时,当第一个用户访问数据时,会缓存数据。 如果其他用户请求相同的数据,则会从缓存中检索数据。 不通过对数据库进行另一次调用来检索数据,以验证用户对数据的访问权限。 如果希望多个用户访问数据,并且希望通过数据库的安全配置验证对数据的每次检索,请不要使用缓存。

DataSourceMode如果 设置为 DataSet ,并且已指定 ,FilterExpression则会计算它以及提供FilterParameters的任何值,并在数据检索操作期间将生成的筛选器应用于数据列表。

适用于

另请参阅