Compte tenu du code suivant:
select distinct color from TableofColors
4 Réponses :
La syntaxe de compréhension de requête ne prend pas en charge la méthode Dans votre cas, vous pouvez simplement écrire distincte code>. p>
couleurs.distinct () code>; Vous ne faites rien avec l'expression de la requête. P>
Il n'y a pas de syntaxe de requête intégrée distincte dans C # aussi loin que je suis au courant. Ceci est aussi proche que possible:
var distinctColors = (from color in colors
select color).Distinct()
Vous pouvez essayer ce
Cela retournera un innmerable ienumerable
Vous devriez écrire de C dans le groupe de couleurs C par C en C Sélectionnez C.Key Code>. En outre, ce sera probablement un peu plus lent que distinct code>.
Pantalon. Avez-vous des statistiques de groupe de prouves de plus lentement que distinctes?
Non; C'est pourquoi j'ai dit probablement i>.
Je viens de l'essayer dans Linqpad en utilisant la matrice dans la question; distinct code> était environ deux fois plus rapide.
La syntaxe d'expression requête de la requête C # n'inclut pas "distincte". VB's est cependant, par exemple, du MSDN Docs pour la clause distincte de VB A >: : p> ne pense pas que vous em> avez em> utiliser des expressions de requête pour utiliser LINQ :) p> p>
Au fait, cela s'appelle la syntaxe de compréhension de la requête.
@Slaks: ou juste des "expressions de requête" conformément à la section 7.15 de la spécification.