LinqDataSource.Selecting Evento
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.
Ocorre antes de uma operação de recuperação de dados.
public:
event EventHandler<System::Web::UI::WebControls::LinqDataSourceSelectEventArgs ^> ^ Selecting;
public event EventHandler<System.Web.UI.WebControls.LinqDataSourceSelectEventArgs> Selecting;
member this.Selecting : EventHandler<System.Web.UI.WebControls.LinqDataSourceSelectEventArgs>
Public Custom Event Selecting As EventHandler(Of LinqDataSourceSelectEventArgs)
Tipo de evento
Exemplos
O exemplo a seguir mostra um manipulador de eventos para o Selecting evento. O manipulador cria uma consulta que recupera valores de uma matriz de valores de cadeia de caracteres na página da Web.
public partial class Default3 : System.Web.UI.Page
{
string[] citiesArray =
{
"Atlanta",
"Charlotte",
"Denver",
"New York",
"San Francisco"
};
protected void Page_Load(object sender, EventArgs e)
{
}
protected void LinqDataSource_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
var cities = from city in citiesArray
where city.CompareTo("B") > 0
select city;
e.Result = cities;
// Or we could set e.Result = citiesArray to return all rows.
}
}
Partial Class Default3
Inherits System.Web.UI.Page
Dim citiesArray() As String = _
{ _
"Atlanta", _
"Charlotte", _
"Denver", _
"New York", _
"San Francisco" _
}
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
End Sub
Protected Sub LinqDataSource_Selecting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceSelectEventArgs) Handles LinqDataSource1.Selecting
Dim cities = From city In citiesArray _
Where city > "B" _
Select city
e.Result = cities
' Or we could set e.Result = citiesArray to return all rows.
End Sub
End Class
O exemplo a seguir mostra como atribuir a Result propriedade ao objeto retornado de um método que representa um procedimento armazenado.
Protected Sub LinqDataSource_Selecting(ByVal sender As Object, _
ByVal e As LinqDataSourceSelectEventArgs)
Dim exampleContext As ExampleDataContext = New ExampleDataContext()
e.Result = exampleContext.GetRegisteredCustomers()
End Sub
protected void LinqDataSource_Selecting(object sender,
LinqDataSourceSelectEventArgs e)
{
ExampleDataContext exampleContext = new ExampleDataContext();
e.Result = exampleContext.GetRegisteredCustomers();
}
Comentários
Manipule o Selecting evento para executar as seguintes tarefas:
Modifique os parâmetros para recuperação de dados.
Gere a consulta programaticamente.
Modifique os valores para classificação ou paginação.
Executar classificação ou paginação personalizada.
Cancele a operação de recuperação de dados.
O LinqDataSourceSelectEventArgs objeto que é passado para manipuladores de eventos para esse evento contém os parâmetros para a operação de recuperação de dados. Você pode modificar os parâmetros no Selecting manipulador de eventos antes da execução da consulta ou criar um novo conjunto de resultados e atribuí-lo Result à propriedade .
Sua capacidade de implementar a classificação personalizada ou a paginação em manipuladores para esse evento pode ser limitada pelo controle associado ao LinqDataSource. Por exemplo, quando o cabeçalho de coluna de um GridView controle é clicado, o controle executa a classificação automática que pode substituir qualquer ordem estabelecida no manipulador de eventos.
Se uma exceção for gerada em um manipulador de eventos para o Selecting evento, você deverá manipular a exceção nesse manipulador de eventos. A exceção não será passada para um manipulador de eventos para o Selected evento (por meio da Exception propriedade do LinqDataSourceStatusEventArgs objeto). A Exception propriedade contém apenas as exceções geradas após o Selecting evento.