我在C#中的對象,它有幾個特性:獲取從集合對象使用LINQ
// Pseudo class
public class
{
Id;
To;
From;
}
我有一個Collection
該類的實例很多。這看起來是這樣的:
object 1:
Id: 1
To: "PathA"
From: "PathB"
object 2:
Id: 2
To: "PathB"
From: "PathC"
object 3:
Id: 3
To: "PathC"
From: "PathA"
現在我想做的是讓所有的物品,其中的To
值沒有出現在任何物體的From
集合。這將導致以下:
object 1:
Id: 1
To: "PathA"
From: "PathB"
object 2:
Id: 2
To: "PathB"
From: "PathC"
因爲與Id: 3
的最後一個對象在From
屬性,它已經在某處To
屬性存在有PathA
。
我該如何用Linq查詢做到這一點?
'真的像這樣工作' - 它確實,'HashSet'構造函數之一需要'IEnumerable',因爲Linq'Select'返回'IEnumerable '這會編譯和工作。我也喜歡MoreLINQ'ToHashSet()'擴展方法,你不需要聲明''泛型參數,都是推斷出來的。 –
@IlyaIvanov :)不錯。我喜歡它,當一個框架按預期工作時! –