C# C语言中字符串数组到XML的转换#

C# C语言中字符串数组到XML的转换#,c#,linq,linq-to-xml,C#,Linq,Linq To Xml,我有两个阵列: string[] Countries={"US","India","China","England","Australia"}; string[] States={"Texas","Karnataka","Xinjiang","Birmingham","Canbera"}; 如何制作LINQ到XML,以这种方式表示它: <Category> <US>Texas</US> <India>Karnataka</India

我有两个阵列:

string[] Countries={"US","India","China","England","Australia"};
string[] States={"Texas","Karnataka","Xinjiang","Birmingham","Canbera"};
如何制作LINQ到XML,以这种方式表示它:

<Category>
  <US>Texas</US>
  <India>Karnataka</India>
  <China>Xinjiang</China>
  <England>Birmingham</England>
  <Australia>Canbera</Australia>
</Cateogry>

得克萨斯州
卡纳塔克邦
新疆
伯明翰
堪培拉

谢谢

这是使用LINQ方法将两个数组组合成
XElement
s的一种可能方法:

string[] Countries = { "US", "India", "China", "England", "Australia" };
string[] States = { "Texas", "Karnataka", "Xinjiang", "Birmingham", "Canbera" };
var doc = new XElement("Category",
                       Countries.Zip(States, (c, s) => new XElement(c, s))
          );
Console.WriteLine(doc.ToString());

输出:

<Category>
  <US>Texas</US>
  <India>Karnataka</India>
  <China>Xinjiang</China>
  <England>Birmingham</England>
  <Australia>Canbera</Australia>
</Category>

得克萨斯州
卡纳塔克邦
新疆
伯明翰
堪培拉

这是使用LINQ方法将两个数组组合成
XElement
s的一种可能方法:

string[] Countries = { "US", "India", "China", "England", "Australia" };
string[] States = { "Texas", "Karnataka", "Xinjiang", "Birmingham", "Canbera" };
var doc = new XElement("Category",
                       Countries.Zip(States, (c, s) => new XElement(c, s))
          );
Console.WriteLine(doc.ToString());

输出:

<Category>
  <US>Texas</US>
  <India>Karnataka</India>
  <China>Xinjiang</China>
  <England>Birmingham</England>
  <Australia>Canbera</Australia>
</Category>

得克萨斯州
卡纳塔克邦
新疆
伯明翰
堪培拉
谢谢Dotnetfiddle:)我会用的。谢谢Dotnetfiddle:)我会用的。