ObjectDataSourceView.ExecuteSelect(DataSourceSelectArguments) Método

Definição

Recupera dados do objeto identificados pela TypeName propriedade chamando o método identificado pela SelectMethod propriedade e passando quaisquer valores na SelectParameters coleção.

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

Parâmetros

arguments
DataSourceSelectArguments

A era usado para solicitar operações sobre os dados para além da DataSourceSelectArguments recuperação básica de dados.

Devoluções

Uma IEnumerable lista de linhas de dados.

Exceções

O arguments método passado ExecuteSelect(DataSourceSelectArguments) especifica que a fonte de dados deve realizar algum trabalho adicional ao recuperar dados para permitir a paginação ou ordenação dos dados recuperados, mas o controlo de fonte de dados não suporta a capacidade solicitada.

-ou-

O objeto devolvido pelo ExecuteSelect(DataSourceSelectArguments) método não é um DataSet ou DataTable, e a cache está ativada. Apenas DataSet objetos e DataTable podem ser armazenados em cache para o ObjectDataSourceView controlo.

-ou-

Tanto a cache como a personificação de cliente estão ativadas. Não ObjectDataSource suporta cache quando a personificação de cliente está ativada.

O objeto devolvido pelo ExecuteSelect(DataSourceSelectArguments) método é um DataSet, mas não tem tabelas na sua Tables coleção.

-ou-

A EnablePaging propriedade é definida como true, mas as StartRowIndexParameterName propriedades e MaximumRowsParameterName não são definidas.

Observações

A ObjectDataSourceView classe implementa o método herdado ExecuteSelect para recuperar dados usando um objeto de negócio. Os programadores de páginas e os autores de controlo encadernados por dados não chamam diretamente o ExecuteSelect método; em vez disso, utilizam o método exposto Select publicamente.

O método especificado pode ter qualquer assinatura de método, mas deve devolver um dos tipos do ObjectDataSource controlo listados na tabela seguinte para o chamar com sucesso.

Tipo de retorno Ação
IEnumerable O IEnumerable é devolvido pelo Select método.
DataTable A é criado usando o DataTable e devolvido DataView pelo Select método.
DataSet O primeiro DataTable dos DataSet é extraído e a DataView é criado e devolvido pelo Select método.
Object O objeto é envolto num elemento IEnumerable único e devolvido pelo Select método.

Antes de a recuperação dos dados ser realizada, o OnSelecting método é chamado para levantar o Selecting evento. Pode gerir este evento para examinar os valores dos parâmetros e realizar qualquer pré-processamento antes de uma operação.

Para realizar uma operação de seleção, o ObjectDataSourceView controlo usa reflexão para chamar o método identificado pela SelectMethod propriedade e quaisquer parâmetros associados que estejam na SelectParameters coleção, e depois executa-o. Após a conclusão da operação, o OnSelected método é chamado para elevar o Selected evento. Pode gerir este evento para examinar quaisquer valores de retorno e códigos de erro, e realizar qualquer pós-processamento.

Se o Select método devolver um DataSet objeto e a cache estiver ativada, o ObjectDataSourceView método recupera dados e os guarda na cache durante a operação. A cache é criada, descartada ou atualizada com base no comportamento de cache especificado pela combinação das CacheDuration propriedades e.CacheExpirationPolicy

Se o Select método devolver um DataSet objeto e uma FilterExpression propriedade for especificada, este é avaliado juntamente com quaisquer propriedades fornecidas FilterParameters e o filtro resultante é aplicado à lista de dados durante a Select operação.

Para informações sobre como devolver o número de linhas selecionadas, veja Select.

Aplica-se a

Ver também