LINQ to DataSet, distinct par plusieurs colonnes
Voulais juste vérifier si il y a moyen de faire distinctes sur plusieurs colonnes. Merci à l'avance!!!!!
BTW, j'ai trouvé une grande extension LINQ ici mais besoin de quelques conseils pour l'utiliser pour plusieurs colonnes
source d'informationauteur Ganesha
Vous devez vous connecter pour publier un commentaire.
Bien, vous pouvez faire de la projection d'abord:
Ou dans la syntaxe de la requête:
Que faire?
Au lieu de Distinctes que vous pouvez utiliser Groupby, puis en sélectionnant le Plus Haut record de chaque groupe
Comment LINQ Distinctes en fonction de Plusieurs Champs sans les types anonymes
Cela vous donnera la EntityObject Plutôt que de la AnonymousType
Par "distinctes sur plusieurs colonnes" ce que vous vraiment dire, c'est un groupe de par.
Lorsque vous demandez distinctes, cela signifie que vous êtes l'obtention de TOUTES les lignes distinctes, ou, d'un groupe à l'aide de toutes les colonnes dans la table.
Si vous souhaitez seulement obtenir distinct des regroupements pour un sous-ensemble de colonnes, puis d'utiliser un group by dans votre clause précisant les colonnes de groupe. Ensuite, sélectionnez les groupes, comme vous voulez seulement un jeu de clés pour chaque groupe.
Une autre option facile est de créer une seule distinctes de la chaîne.
var req = (à partir de cust en db.Les clients
sélectionnez nouveau {cust.ID, cust.Nom, cust.Région}).GroupBy(x => new { x.Nom,x.Région}).sélectionnez(z => z.OrderBy(i => je.cust).FirstOrDefault()).ToList();