Condividi tramite


EntityDataSource.Select Proprietà

Definizione

Ottiene o imposta la proiezione che definisce le proprietà da includere nei risultati della query.

public:
 property System::String ^ Select { System::String ^ get(); void set(System::String ^ value); };
public string Select { get; set; }
member this.Select : string with get, set
Public Property Select As String

Valore della proprietà

Parametri utilizzati per la creazione della clausola ORDER BY.

Eccezioni

Quando la Select proprietà specifica una proiezione di query e il valore di EnableUpdate, EnableDeleteo EnableInsert è true.

Esempio

Il markup XML seguente usa la Select proprietà per specificare una proiezione con sei delle proprietà del tipo Product:

<asp:EntityDataSource ID="ProductDataSource" runat="server"
    ConnectionString="name=AdventureWorksEntities"
    DefaultContainerName="AdventureWorksEntities"
    EntitySetName="Product" OrderBy="it.[ProductID]"
    Select="it.[ProductID], it.[Name], it.[ListPrice],
    it.[Size], it.[Style], it.[Weight]">
</asp:EntityDataSource>

L'esempio XML precedente è uguale al seguente ObjectQuery<T> denominato products:

ObjectQuery<Product> products = context.Product
    .Select(it.[ProductID], it.[Name], it.[ListPrice],
      it.[Size], it.[Style], it.[Weight])
    .OrderBy("it.[ProductID]");

Commenti

La Select proprietà del EntityDataSource controllo contiene una stringa che rappresenta l'istruzione SELECT di una query Entity SQL. In questo modo è possibile proiettare un set specificato di proprietà dagli oggetti restituiti dalla query.

Questa stringa viene passata, senza alcuna modifica, all'oggetto ObjectQuery<T> eseguito da Entity Framework. Questa query è l'origine dei dati regolamentati dal EntityDataSource controllo . La stringa fornita alla Select proprietà usa lo stesso formato della stringa passata al Select metodo di ObjectQuery<T>. Per esempi di come usare la clausola SELECT per definire una proiezione per una query, vedere Procedura: Eseguire una query che restituisce oggetti di tipo anonimo.

Gli aggiornamenti non sono supportati per i dati proiettati. Ciò significa che quando si utilizza la Select proprietà per specificare una proiezione, il data binding associato non supporta gli aggiornamenti.

Quando si definisce una proiezione con il paging abilitato, è necessario definire la proprietà in base alla quale ordinare i risultati. Ciò significa che quando si imposta la Select proprietà su una proiezione e si è AutoPage impostata su true, è necessario impostare anche la OrderBy proprietà per definire l'ordine o impostare la AutoGenerateOrderByClause proprietà su true e aggiungere un parametro ORDER BY all'insieme OrderByParameters .

Select non può essere impostato se EnableUpdate, EnableDeleteo EnableInsert è abilitato.

Select Se è impostato su una query che restituisce una proiezione di proprietà ,ad esempio SELECT p.ProductID, p. Name FROM AdventureWorksEntities.Products AS p, verrà restituito un oggetto DbDataRecord .

Si applica a