0

假设我有一个 Cat 列表。

Public Class Cat 
    Public Property id As Guid
    Public Property name As String
    Public Property race As catRace
End Class

如何使用 id 属性快速将此 List(Of Cat) 转换为 List(Of Guid)?

我可以做 :

Dim newList As List(Of Guid)
For each item in catList
    newList.Add(item.id)
Next

但我认为必须有一种方法可以更快地做到这一点(1 LOC)。我只是找不到方法。

4

3 回答 3

2

一行代码可能会使打字速度更快,但执行起来不一定更快。

Dim newList = From c In catList Select c.id
于 2012-05-29T19:50:14.473 回答
1

LINQ。catList.Select(t=>t.id)。不完全确定 => 的 VB 等价物对于 lambda 是什么。

于 2012-05-29T19:42:55.617 回答
1

一行代码,使用扩展方法而不是 LINQ。

newList = catList.Select(Function(t) t.id).ToList

如果您更喜欢 LINQ

newList = (From c In catList Select c.id).ToList
于 2012-05-29T20:38:55.320 回答