我有列表list1,其中包含另一個列表,list2。刪除內部列表中的項目 - linq
我不得不使用lambda表達式從list1的其中id = 2 list2中中刪除項目。 我該怎麼寫呢?
eg: list1 -> List<balls> -> Ball contains list of images.
list2 -> List<images> -> each image will have an id.
我需要刪除的圖像從列表1(其中圖像的ID作爲1)
我有列表list1,其中包含另一個列表,list2。刪除內部列表中的項目 - linq
我不得不使用lambda表達式從list1的其中id = 2 list2中中刪除項目。 我該怎麼寫呢?
eg: list1 -> List<balls> -> Ball contains list of images.
list2 -> List<images> -> each image will have an id.
我需要刪除的圖像從列表1(其中圖像的ID作爲1)
你可以用這個嘗試:
list1.ForEach(ball =>
ball.list2.RemoveAll(image => image.Id == 2));
這個sln工作。刪除圖像後,我再次打印所有的圖像ID的。它也打印'2'。即2沒有被移除......對。? – Sahi
喜歡的東西
list1.First(k => k.id == 2)
.list2.RemoveAt(0);
一些球如果你的ID是指列表2,你有使循環。
foreach (var item in list1)
{
item.list2.RemoveAll(k => k.id == 2);
}
或者,
list1.ForEach(item => item.list2.RemoveAll(k => k.id == 2));
'Id'是用於'image',而不是'ball' –
id是用於圖片的。即列表2對象 – Sahi
能否請您創建一個[最小,完整,可驗證的示例](HTTP://計算器。 COM /幫助/麥克)基於你的問題? –
你有沒有嘗試過任何事情?你有沒有使用Google? –
是的。我對Linq/Lamda表達非常陌生。 – Sahi