LinqDataSource.Selecting Evento
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Si verifica prima di un'operazione di recupero dati.
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 evento
Esempio
Nell'esempio seguente viene illustrato un gestore eventi per l'evento Selecting . Il gestore crea una query che recupera i valori da una matrice di valori stringa nella pagina 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
Nell'esempio seguente viene illustrato come assegnare la Result proprietà all'oggetto restituito da un metodo che rappresenta una stored procedure.
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();
}
Commenti
Gestire l'evento Selecting per eseguire le attività seguenti:
Modificare i parametri per il recupero dei dati.
Generare la query a livello di codice.
Modificare i valori per l'ordinamento o il paging.
Eseguire l'ordinamento o il paging personalizzati.
Annullare l'operazione di recupero dati.
L'oggetto LinqDataSourceSelectEventArgs passato ai gestori eventi per questo evento contiene i parametri per l'operazione di recupero dati. È possibile modificare i parametri nel gestore eventi prima dell'esecuzione Selecting della query oppure creare un nuovo set di risultati e assegnarlo alla Result proprietà .
La possibilità di implementare l'ordinamento personalizzato o il paging nei gestori per questo evento potrebbe essere limitato dal controllo associato a LinqDataSource. Ad esempio, quando si fa clic sull'intestazione di colonna di un GridView controllo, il controllo esegue l'ordinamento automatico che potrebbe eseguire l'override di qualsiasi ordine stabilito nel gestore eventi.
Se viene generata un'eccezione in un gestore eventi per l'evento Selecting , è necessario gestire l'eccezione nel gestore eventi. L'eccezione non verrà passata a un gestore eventi per l'evento Selected (tramite la Exception proprietà dell'oggetto LinqDataSourceStatusEventArgs ). La Exception proprietà contiene solo le eccezioni generate dopo l'evento Selecting .