Liste<T>.Distinct() en C# - plusieurs critères pour EqualityComparer?

J'ai une collection d'objets qui ont plusieurs propriétés dans chacun d'eux. J'ai souvent besoin d'obtenir une liste de valeurs distinctes pour de nombreuses propriétés dans cette collection. Si j'en œuvre IEqualityComparer sur ce type , il me donne un seul critère pour obtenir les différents objets de la collection. Comment puis-je obtenir pour être en mesure d'appeler Distinctes sur plusieurs critères pour cette collection ?

Par exemple ,

  class Product {
    string name ;
    string code ;
    string supplier ;
//etc 
}

Imaginer une liste de ces objets produit.
Parfois , je veux avoir la liste des noms distincts dans la liste , et à certains oter temps , une liste des différents fournisseurs . etc.
Si je l'appelle Distinctes sur une liste de ces produits , basés sur la façon dont IEqualityComparer est mis en œuvre , il sera toujours utiliser les mêmes critères , ce qui ne va pas servir ma raison d'être.

InformationsquelleAutor Bhaskar | 2010-04-28