Distinct sur plusieurs colonnes Entity Framework LINQ
Qu'est-ce que LINQ Équivalent de
Select DISTINCT A, B, C from TESTDB WHERE ALPHA =1
Je suis en train d'essayer quelque chose comme ceci:
var data = TESTDB.WHERE(i=>i.ALPHA==1).SELECT(A,B,C).DISTINCT();
source d'informationauteur Nanu
Vous devez vous connecter pour publier un commentaire.
À l'aide des objets anonymes fera l'affaire:
Vous pouvez également essayer
Si vous l'utilisez comme ça:
il s'avère que distinct count est égal à 3. Pourquoi est-ce? Semble que par défaut Distinctes distingue entre les instances (même si toutes les propriétés ont la même valeur, ils sont trois cas).
Vous devez mettre en œuvre personnalisée comparer, vous trouverez ici l'exemple de code: http://msdn.microsoft.com/en-us/library/bb338049.aspx.
Pourtant je ne suis pas sûr pourquoi voulez-vous sélectionner trois propriétés (A,B,C). Vous pouvez accéder à la propriété unique de cette manière:
Toutefois, dans le but de sélectionner plusieurs propriétés qui vous jette de l'ensemble de l'objet à une catégorie contenant ces propriétés: