当数据保存在列表中时,Linq to XML

时间:2009-12-07 14:49:20

标签: xml linq

我有一个字符串列表,我需要用它来创建以下XML。列表中的项目是字符串“Line 1”,“Line 2”等。棘手的一点是元素名称从“l1”向上递增。是否可以使用Linq来执行此操作,还是应该使用其他方法?

<srv>
  <enqRsp>
    <l1>LINE 1</l1>
    <l2>LINE 2</l2>
    <l3>LINE 3</l3>
    <l4>LINE 3</l4>
  </enqRsp>
</srv>

1 个答案:

答案 0 :(得分:2)

这是完全可能的,使用提供索引的Select overload以及值:

var document = new XDocument(new XElement("srv",
     new XElement("enqRsp",
        list.Select((value, index) => new XElement("l" + (index+1), value))
     )
));