我有兩個字典串列,我正在應用 LINQ 查詢來獲得交叉連接。
var result= list1.SelectMany(x=> list2,(x,y)=> new {x,y});
現在結果包含所有記錄,但 x 和 y 都分開了,但我希望兩個字典都在一行中而沒有 x 和 y,而且表中的字典是動態的,因此它可能有任何鍵和值。
提前致謝!
uj5u.com熱心網友回復:
也許您的意思是您希望您的輸出“行”是包含所有 x 和所有 y 的單個字典。它可能是這樣的:
var result= list1.SelectMany(
x=> list2,
(x,y) => new Dictionary<WhateverType,YouHave>(x.Concat(Y))
);
它獲取所有的KeyValuePair<WhateverTypr,YouHave>x 和 y 并IEnumerable<KeyValuePair<WhateverType,YouHave>>從中生成一個,然后創建一個包含所有這些鍵值對的新字典
字典的型別需要一致;你不能讓X是Dictionary<string,int>和y是Dictionary<int,string>例如
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/318208.html
上一篇:.NETLinq查詢一對多關系
下一篇:我想使用Linq修改物件中的資料
