我有一个字符串数组:
var a = new string[] { "a", "b", "b" };
和一个班级:
public class MyClass
{
public MyField[] MyField {get; set;}
}
其中MyField
是一个类:
public class MyField
{
public InnerField[] InnerField{get; set;}
}
其中InnerField
是:
public class InnerField
{
public string Output {get; set;}
}
所以我想从我的数组(a)
复制到MyField[]
。
是否可以通过例如LINQ来制作它?
答案 0 :(得分:0)
也许:
var a = new string[] { "a", "b", "b" };
var innerFields = a.Select(s => new InnerField { Output = s });
var mc = new MyClass
{
MyField = a.Select(s => new MyField { InnerField = innerFields.ToArray() }).ToArray()
};
如果您甚至想要使用相同的InnerField[]
引用,请不要在分配时使用innerFields.ToArray()
,但已在声明innerFields
时使用MyField
。然后,所有MyField
个实例都引用相同的数组。
如果您只需要MyField
数组中的var mc = new MyClass
{
MyField = new[]{ new MyField { InnerField = innerFields.ToArray() }}
};
个实例:
{{1}}