2010-03-25 64 views
3

我有一个其中有list<Book>的类,而那些Book对象有很多很多属性。 string Subject是其中的一个属性。如何获得列表中所有不同值的字符串[]?

我想要得到一个string[]类型的值,它将包含所有列表中的所有不同主题。

是否有一个优雅的方式来做到这一点,或者我将不得不扫描整个列表并输入每个主题,然后删除重复项?

回答

5

这将返回不同的受试者:

books.Select(b => b.Subject).Distinct() 

要创建具有字符串的数组,可以使用ToArray的方法:

string[] subjects = books.Select(b => b.Subject).Distinct().ToArray(); 
9
string[] subjects = books.Select(i => i.Subject).Distinct().ToArray(); 
相关问题