Sdílet prostřednictvím


LinqDataSource.Selecting Událost

Definice

Nastane před operací načítání dat.

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) 

Event Type

Příklady

Následující příklad ukazuje obslužnou rutinu Selecting události pro událost. Obslužná rutina vytvoří dotaz, který načte hodnoty z pole řetězcových hodnot na webové stránce.

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

Následující příklad ukazuje, jak přiřadit Result vlastnost objektu, který je vrácen z metody, která představuje uloženou proceduru.

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();  
}  

Poznámky

Selecting Zpracujte událost, abyste mohli provádět následující úlohy:

  • Upravte parametry pro načítání dat.

  • Vygenerujte dotaz programově.

  • Upravte hodnoty pro řazení nebo stránkování.

  • Proveďte vlastní řazení nebo stránkování.

  • Zrušte operaci načítání dat.

Objekt LinqDataSourceSelectEventArgs , který je předán obslužným rutinami událostí pro tuto událost, obsahuje parametry pro operaci načtení dat. Parametry v obslužné rutině Selecting události můžete upravit před spuštěním dotazu nebo můžete vytvořit novou sadu výsledků a přiřadit ji vlastnosti Result .

Vaše schopnost implementovat vlastní řazení nebo stránkování v obslužných rutinách pro tuto událost může být omezena ovládacím prvek, který je vázán na LinqDataSource. Když například kliknete na záhlaví GridView sloupce ovládacího prvku, ovládací prvek provede automatické řazení, které může přepsat jakékoli pořadí, které vytvoříte v obslužné rutině události.

Pokud je v obslužné rutině Selecting události vyvolán výjimka, musíte ji zpracovat v této obslužné rutině události. Výjimka se nepředá obslužné rutině události události Selected (prostřednictvím Exception vlastnosti objektu LinqDataSourceStatusEventArgs ). Vlastnost Exception obsahuje pouze výjimky, které jsou vyvolány po Selecting události.

Platí pro