Sdílet prostřednictvím


LinqDataSourceSelectEventArgs.Result Vlastnost

Definice

Získá nebo nastaví datový objekt, který se používá v datovém dotazu.

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

Hodnota vlastnosti

Objekt, který představuje data pro dotaz.

Příklady

Následující příklad ukazuje, jak nastavit Result vlastnost na výsledek dotazu LINQ.

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

Následující příklad ukazuje, jak nastavit Result vlastnost na pole řetězcových hodnot je definována 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

Poznámky

Ve výchozím nastavení LinqDataSource ovládací prvek použije výrazy dotazu na objekt definovaný ve TableName vlastnosti . V obslužné rutině Selecting události můžete ručně změnit objekt, který se dotazuje, nastavením Result vlastnosti na objekt. Vlastnost můžete například použít Result k dotazování kolekce v paměti na webové stránce nebo k získání výsledků z výrazu dotazu LINQ. Vlastnost můžete nastavit Result na libovolný objekt. Pokud objekt neimplementuje IEnumerable<T> rozhraní, LinqDataSource ovládací prvek zabalí objekt do objektu, který implementuje IEnumerable<T> rozhraní.

Result Pokud je vlastnost nastavena na jinou hodnotu než null, LinqDataSource ovládací prvek se nebude dotazovat na objekt definovaný ve TableName vlastnosti . Místo toho dotazuje objekt ve Result vlastnosti .

Poznámka

Když nastavíte Result vlastnost na objekt, nepoužívejte null k reprezentaci objektu, který neobsahuje žádná data. Ovládací LinqDataSource prvek interpretuje null , že Result vlastnost není nastavena a vytvoří objekt ve vlastnosti a dotazuje ho TableName . Chcete-li reprezentovat objekt, který neobsahuje data, nastavte Result vlastnost na IList objekt nebo IList<T> , který neobsahuje žádné prvky.

Události ContextCreating, ContextCreateda ContextDisposing se nevyvolají, když programově nastavíte Result vlastnost objektu a platí dvě další podmínky. Podmínkou je, že buď původní hodnoty nemusí být uloženy ve stavu zobrazení, nebo objekt ve Result vlastnosti implementuje ITable rozhraní.

Platí pro

Viz také