2009-12-07 37 views
0

我有一个需要用来创建以下XML的字符串列表。列表中的项目是字符串“行1”,“行2”等。棘手的是元素名称从“l1”向上增加。是否可以使用Linq来做到这一点,或者我应该使用不同的方法?当数据保存在列表中时将Linq转换为XML

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

回答

2

这是完全可能的,利用它提供的索引以及价值Select overload

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

这工作很好,谢谢。 – Retrocoder 2009-12-07 15:02:52