Ho una collezione di oggetti che hanno diverse proprietà in ognuno di essi. Spesso ho bisogno di ottenere un elenco di valori distinti per molte proprietà in questa raccolta. Se implemento IEqualityComparer su questo tipo, mi dà un singolo criterio per ottenere gli oggetti distinti nella raccolta. Come posso essere in grado di chiamare Distinct su più criteri per questa raccolta?Elenco <T> .Distinct() in C#: più criteri per EqualityComparer?
Per esempio,
class Product {
string name ;
string code ;
string supplier ;
//etc
}
Immaginate un elenco di tali oggetti prodotto. A volte, desidero ottenere l'elenco di nomi distinti nell'elenco e, in un altro momento, un elenco di fornitori distinti. ecc. Se chiamo Distinto in un elenco di questi prodotti, in base al modo in cui viene implementato IEqualityComparer, verrà sempre utilizzato lo stesso criterio, che non verrà utilizzato per il mio scopo.
avrebbe scelto come risposta, ma per la 2 minuti risposta iniziale da Hans. – Bhaskar