我有一个List(Of Hardware) – List叫做HWModels
类硬件具有以下属性:@H_403_2@
> ModelName
>状态
> cpuStatus
> MemoryStatus
> DiskStatus@H_403_2@
通过读取CSV文件来填充列表,一旦填充完毕,我想根据ModelName返回不同的记录@H_403_2@
我试过这样做如下:@H_403_2@
(From a In HWModels Select a.ModelName).Distinct
但这不对,因为我最终得到的只是ModelName的列表而没有别的.@H_403_2@
如何让Distinct函数返回列表中的所有其他类成员?@H_403_2@
LINQ to Objects并没有提供任何可以“完全独立于投影”的东西.您可以按
名称分组,然后
获取每个组中的第一个元素,但这非常难看.
我的MoreLINQ提供了一个DistinctBy
方法 – 在C#中你使用:@H_403_2@
var distinct = HWModels.DistinctBy(x => x.ModelName).ToList();
据推测,VB就像是@H_403_2@
Dim distinct = HWModels.DistinctBy(Function(x) x.ModelName).ToList
抱歉任何语法错误:(@H_403_2@