[英]LINQ Getting Unique items from a List within a List
我有一個MyObject
類型的List
,其定義如下:
class MyObject {
public string ListName { get; set; }
public IEnumerable<OtherObject> ObjectList { get; set;}
}
給定一個MyObject
類型的List
,使用LINQ我應該使用什么表達式來獲取所有不同的OtherObject
?
我打算做的是循環每個MyObject
並從ObjectList
屬性中獲取不同的OtherObject
,但是我需要在列表中獲得不同的。
請注意,如果: MyObject[0].Objectlist[0] == 'ItemA'
和MyObject[1].Objectlist[0] == 'ItemA'
它仍將返回ItemA
的單個實例。 此代碼僅是一種表示形式。 順便說一句,這不是我訪問我的對象的方式。
怎么樣:
var l = new List<MyObject>(...);
var unique = l.SelectMany(j => j.ObjectList).Distinct();
您可以使用Distinct()中的lambda技術嗎? 改變你決定一個物體是否與另一個物體不同的方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.