2012-05-29 71 views
0

假設我有一個貓的列表。如何將列表(對象)快速轉換爲列表(「Object.field」)?

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

如何使用id屬性將此List(Cat)快速轉換爲List(Guid)?

我可以這樣做:

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

但我認爲必須有一個辦法做到這一點更快(1個LOC)。我無法找到如何。

回答

1

一行代碼,使用擴展方法而不是LINQ。

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

如果你喜歡的VB拉姆達LINQ

newList = (From c In catList Select c.id).ToList 
1

LINQ。 catList.Select(T => t.id)。不完全確定什麼VB等效= =是lambda的。

+0

航空代碼。函數(t)t.id – MarkJ

2

一行代碼可能會使輸入速度更快,但執行速度不一定更快。

Dim newList = From c In catList Select c.id 
相關問題