我有一個List物件,說
List<MyObject> = new List<MyObject>{object1, object2, ..., object10}
每個物件都有屬性“Property1”,它是一個字典,每個物件有不同數量的鍵,其中每個鍵的值也是一個字典,但這里每個鍵的值是 a string。我想將其轉換List<object>為List<List<string>>,因此對于每個物件,我想創建一個包含字串值的串列,其中值取自這個嵌套字典。
uj5u.com熱心網友回復:
再次映射它的快速方法:
var newList = new List<List<string>>();
foreach(var item in items){
newList.Add(item.Property1.Values.ToList<string>());
}
uj5u.com熱心網友回復:
我認為是這樣的:
yourList.Select(mo => mo.Property1.SelectMany(d => d.Value.Values).ToList()).ToList();
它產生一個List < List <string>> - 我將使用粗體和斜體來區分:
yourList.Select生成將成為List的列舉,因此List中的每個條目都有一個條目MyObjectmo.Property1.SelectMany列舉 的外部字典Property1,獲取外部字典中Value.Values每個條目的 。- 每個外部條目
Value都是內部條目Dictionary<...,string>,因此是一個字典,其Values集合是一堆字串。Value.Values因此表示與每個外部字典條目相關聯的字串集合 - 使用這些多個“字串集合”
SelectMany將它們折疊成單個字串列舉,即使用 ToList 轉換 a 串列,因此.ToList()onSelectMany()為您提供串列
- 每個外部條目
.ToList()運算式末尾的 為您提供List < ... >
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/474350.html
標籤:C#
上一篇:GetComponent(TypecustomType)的行為不同于GetComponent<customType>
