List1 和 List2 是我擁有的 2 個串列,預期輸出應該類似于串列 3,如何在 c# 中使用 LINQ 來實作這一點。
Input List1 = {"test1", "test2","test3"};
Input List2 = {{"name": "test1", "value":1},{"name": "test2", "value":2},{"name": "test5", "value":5}};
Output List3 = {{"name": "test1", "value":1},{"name": "test2", "value":2}};
uj5u.com熱心網友回復:
據我所知,您需要List2名稱在List1. 如果這是你的問題,那么你可以嘗試這樣Where的Contains事情:
var List3 = List2
.Where(item => List1.Contains(item.name))
.ToList();
uj5u.com熱心網友回復:
您可以使用聯接:
var query = from name in list1
join item in list2
on name equals item.name
select item;
var list3 = query.ToList();
如果串列很大,這種方法會很有效。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/532859.html
標籤:C#林克
下一篇:分組,然后在C#中的組內排序
