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à

String

Parametri che vengono usati per creare la clausola ORDER BY.

Eccezioni

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

Esempio

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

<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 è identico a quello riportato di seguito ObjectQuery<T> 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 di proprietà specificato dagli oggetti restituiti dalla query.

Questa stringa viene passata, senza alcuna modifica, all'oggetto ObjectQuery<T> che viene eseguito dal Entity Framework. Questa query è l'origine dei dati regolati 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 usa 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 definita una proiezione e la proprietà è 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 alla OrderByParameters raccolta.

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

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

Si applica a