EntityDataSource.Select Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit la projection qui définit les propriétés à inclure dans les résultats de la requête.
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
Valeur de propriété
Paramètres utilisés pour créer la clause ORDER BY.
Exceptions
Lorsque la propriété Select spécifie une projection de requête et la valeur de EnableUpdate, EnableDelete ou EnableInsert est true
.
Exemples
Le balisage XML suivant utilise la Select propriété pour spécifier une projection avec six des propriétés du type de produit :
<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’exemple XML précédent est le même que celui qui est ObjectQuery<T> nommé products
:
ObjectQuery<Product> products = context.Product
.Select(it.[ProductID], it.[Name], it.[ListPrice],
it.[Size], it.[Style], it.[Weight])
.OrderBy("it.[ProductID]");
Remarques
La Select propriété du EntityDataSource contrôle contient une chaîne qui représente l’instruction Select d’une requête de Entity SQL. Cela vous permet de projeter un ensemble spécifié de propriétés à partir des objets retournés par la requête.
Cette chaîne est passée, sans modification, au ObjectQuery<T> qui est exécuté par le Entity Framework. Cette requête est la source des données régulées par le EntityDataSource contrôle. La chaîne fournie à la Select propriété utilise le même format que la chaîne passée à la Select méthode de ObjectQuery<T> . Pour obtenir des exemples d’utilisation de la clause Select pour définir une projection pour une requête, consultez Comment : exécuter une requête qui retourne des objets de type anonyme.
Les mises à jour ne sont pas prises en charge pour les données projetées. Cela signifie que lorsque vous utilisez la Select propriété pour spécifier une projection, la liaison de données liée ne prend pas en charge les mises à jour.
Quand vous définissez une projection avec la pagination activée, vous devez définir la propriété en fonction de laquelle les résultats doivent être triés. Cela signifie que lorsque vous affectez à la propriété la valeur Select définie pour une projection et que AutoPage vous avez défini sur true
, vous devez également définir la OrderBy propriété pour définir l’ordre ou définir la AutoGenerateOrderByClause propriété sur true
et ajouter un paramètre order by à la OrderByParameters collection.
Select ne peut pas être défini si EnableUpdate , EnableDelete ou EnableInsert est activé.
Si Select a la valeur d’une requête qui retourne une projection de propriétés (par exemple, SELECT p.ProductID, p. Name FROM AdventureWorksEntities.Products AS p
), une est DbDataRecord retournée.