Skip to main content
 首页 » 编程设计

c#之展开集合并保存一些字段。

2024年02月20日28JustinYoung

我有以下类(class):

class Item 
{ 
    public string[] field1; 
    public int field2; 
} 

好吧,我收集了一些元素。我如何将这些集合转换为

class Item 
{ 
    public string field1; 
    public int field2; 
} 

我的意思是 Items.SelectMany(x => x.field1) 但我需要为我的集合中的每个元素保存 filed2 值。

例子

field1:{"asd","asdf","fscsd"} 
field2:123 
 
-> 
 
field1:{"asd"} 
field2:123 
 
field1:{"asdf"} 
field2:123 
 
field1:{"fscsd"} 
field2:123 

请您参考如下方法:

试试这个:

var res = Items.SelectMany(x => x.field1.Select(s => new {field1=s, x.field2})); 

您将返回一个可枚举的匿名对象,每个对象都有两个字段 - field1 和 field2。