ObjectDataSourceView.SelectMethod Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define o nome do método ou função que o ObjectDataSourceView controle invoca para recuperar dados.
public:
property System::String ^ SelectMethod { System::String ^ get(); void set(System::String ^ value); };
public string SelectMethod { get; set; }
member this.SelectMethod : string with get, set
Public Property SelectMethod As String
Valor da propriedade
Uma cadeia de caracteres que representa o nome do método ou função que o ObjectDataSourceView usa para recuperar dados. O padrão é uma cadeia de caracteres vazia ("").
Exemplos
O exemplo de código a seguir demonstra como um GridView controle pode exibir dados usando um ObjectDataSource controle em uma página do Web Forms. Identifica ObjectDataSource um nome de classe parcial ou totalmente qualificado com sua TypeName propriedade e um método que é chamado para recuperar dados com sua SelectMethod propriedade. Em tempo de execução, o objeto é criado e o método é chamado usando reflexão. O GridView controle enumera por meio da IEnumerable coleção retornada pelo SelectMethode, em seguida, exibe os dados.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ObjectDataSource - C# Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:gridview
id="GridView1"
runat="server"
datasourceid="ObjectDataSource1" />
<asp:objectdatasource
id="ObjectDataSource1"
runat="server"
selectmethod="GetAllEmployees"
typename="Samples.AspNet.CS.EmployeeLogic" />
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB" Assembly="Samples.AspNet.VB" %>
<%@ Page language="vb" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ObjectDataSource - Visual Basic Example</title>
</head>
<body>
<form id="Form1" method="post" runat="server">
<asp:gridview
id="GridView1"
runat="server"
datasourceid="ObjectDataSource1" />
<asp:objectdatasource
id="ObjectDataSource1"
runat="server"
selectmethod="GetAllEmployees"
typename="Samples.AspNet.VB.EmployeeLogic" />
</form>
</body>
</html>
Comentários
O método especificado pode ter qualquer assinatura de método, mas deve retornar um dos tipos listados na tabela a seguir para que o controle a ObjectDataSource chame com êxito
| Tipo de retorno | Ação |
|---|---|
| IEnumerable | O IEnumerable é retornado pelo Select método. |
| DataTable | Um DataView é criado usando o DataTable método e retornado pelo Select método. |
| DataSet | O primeiro DataTable é DataSet extraído e um DataView é criado e retornado pelo Select método. |
| Object | O objeto é encapsulado em um elemento IEnumerable e retornado pelo Select método. |
O método identificado pela SelectMethod propriedade pode ser um método de instância ou um static método (Shared no Visual Basic). Se for um método de instância, o objeto de negócios será criado e destruído sempre que o SelectMethod método for chamado. Você pode manipular o ObjectCreated evento para trabalhar com o objeto de negócios antes que o método especificado pela SelectMethod propriedade seja chamado. Você também pode lidar com o ObjectDisposing evento gerado após o método especificado pela SelectMethod propriedade ser chamado. (Dispose será chamado somente se o objeto de negócios implementar a IDisposable interface.) Se o método for um static método (Shared no Visual Basic), o objeto de negócios nunca será criado e você não poderá lidar com esses eventos.
Se o objeto de negócios com o qual o ObjectDataSource controle funciona implementar mais de um método ou função com o mesmo nome (sobrecargas de método), o controle da fonte de dados tentará invocar o correto de acordo com um conjunto de condições, incluindo os parâmetros na SelectParameters coleção. Se os parâmetros na SelectParameters coleção não corresponderem aos da assinatura do método especificado pela SelectMethod propriedade, a fonte de dados gerará uma exceção.
Para obter mais informações, consulte ObjectDataSource.SelectMethod.