LinqDataSourceSelectEventArgs.Result Eigenschap

Definitie

Hiermee wordt het gegevensobject opgehaald of ingesteld dat wordt gebruikt in de gegevensquery.

public:
 property System::Object ^ Result { System::Object ^ get(); void set(System::Object ^ value); };
public object Result { get; set; }
member this.Result : obj with get, set
Public Property Result As Object

Waarde van eigenschap

Een object dat de gegevens voor de query vertegenwoordigt.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de Result eigenschap instelt op het resultaat van een LINQ-query.

protected void LinqDataSource_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
    ExampleDataContext exampleContext = new ExampleDataContext();
    
    e.Result = from p in exampleContext.Products 
         where p.Category == "Beverages"
         select new {
           ID = p.ProductID,
           Name = p.Name
         };
}
Protected Sub LinqDataSource_Selecting(sender As Object, e As LinqDataSourceSelectEventArgs)
    Dim exampleContext As New ExampleDataContext()

    e.Result = From p In exampleContext.Products Where p.Category = "Beverages"
               Select New With { _
                    Key .ID = p.ProductID, _
                    Key .Name = p.Name _
    }
End Sub

In het volgende voorbeeld ziet u hoe u de Result eigenschap instelt op een matrix met tekenreekswaarden die is gedefinieerd op de webpagina.

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

Opmerkingen

Standaard past het LinqDataSource besturingselement de query-expressies toe op het object dat in de TableName eigenschap is gedefinieerd. In een handler voor de Selecting gebeurtenis kunt u handmatig wijzigen welk object wordt opgevraagd door de Result eigenschap in te stellen op een object. U kunt bijvoorbeeld de Result eigenschap gebruiken om een query uit te voeren op een verzameling in het geheugen op de webpagina of om de resultaten van een LINQ-query-expressie op te halen. U kunt de Result eigenschap instellen op elk object. Als het object de IEnumerable<T> interface niet implementeert, verpakt het LinqDataSource besturingselement het object in een object dat de IEnumerable<T> interface implementeert.

Wanneer de Result eigenschap is ingesteld op een andere waarde dan null, voert het LinqDataSource besturingselement geen query uit op het object dat in de TableName eigenschap is gedefinieerd. In plaats daarvan wordt een query uitgevoerd op het object in de Result eigenschap.

Note

Wanneer u de Result eigenschap instelt op een object, gebruikt null u deze niet om een object weer te geven dat geen gegevens bevat. Het LinqDataSource besturingselement interpreteert null dat de Result eigenschap niet is ingesteld en het object in de TableName eigenschap maakt en er query's op uitvoert. Als u een object wilt weergeven dat geen gegevens bevat, stelt u de Result eigenschap in op een IList of IList<T> object dat geen elementen bevat.

De ContextCreating, ContextCreateden ContextDisposing gebeurtenissen worden niet gegenereerd wanneer u de Result eigenschap programmatisch instelt op een object en wanneer er twee aanvullende voorwaarden van toepassing zijn. De voorwaarden zijn dat de oorspronkelijke waarden niet hoeven te worden opgeslagen in de weergavestatus of dat het object in de Result eigenschap de ITable interface implementeert.

Van toepassing op

Zie ook