如何将数组转换为双倍如此大的数组?

the*_*sch 2 c#

我有一个元素类型:

public class FieldInfo
{
  public string Label { get; set; }
  public string Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我有一个充满FieldInfo物体的阵列.

FieldInfo[] infos = new FieldInfo[]
                      {
                        new FieldInfo{Label = "label1", Value = "value1"},
                        new FieldInfo{Label = "label2", Value = "value2"}
                      };
Run Code Online (Sandbox Code Playgroud)

现在我想将该数组转换为包含以下值的新数组:

string[] wantThatArray = new string[] {"label1", "value1", "label2", "value2"};
Run Code Online (Sandbox Code Playgroud)

有没有一种简短的方法可以从数组转换为类似infos数组wantThatArray
也许使用LINQ的Select?

And*_*rei 10

string[] wantThatArray = infos
    .SelectMany(f => new[] {f.Label, f.Value})
    .ToArray();
Run Code Online (Sandbox Code Playgroud)


Mar*_*ell 8

我会保持简单:

string[] wantThatArray = new string[infos.Length * 2];
for(int i = 0 ; i < infos.Length ; i++) {
   wantThatArray[i*2] = infos[i].Label;
   wantThatArray[i*2 + 1] = infos[i].Value;
}
Run Code Online (Sandbox Code Playgroud)