2015-02-23 96 views
2

我有一個字符串列表。我需要將它轉換成一個XML文檔。我正在使用XElement來實現這一點。將列表轉換爲xml中的c#

List<string> list= myString.Split(',').ToList(); 

    XElement xmlElements = new XElement("Root", new XElement("Number",list.Select(i => new XElement("Num", i)))); 
       System.Console.Write(xmlElements); 
       System.Console.Read(); 

我得到下面的格式。

<Root> 
<Number> 
    <Num></Num> 
<Num></Num> 
</Number> 
</Root> 

但我需要這樣的東西。

<Root> 
    <Number id=1> 
    <Num></Num> 
    </Number> 
<Number id=2> 
    <Num></Num> 
</Number> 
</Root> 

如何做到這一點。

+2

[轉換列表中XML可能重複? ](http://stackoverflow.com/questions/17043663/convert-list-to-xml) – 2015-02-23 10:57:19

回答

7

如果一個id你的意思是一個索引,那麼:

XElement xmlElements = 
    new XElement("Root",   
     list.Select((i, index) => new XElement("Number", 
             new XAttribute("id", index), 
             new XElement("Num", i)))); 

的結果 「A,B,C」 將

<Root> 
    <Number id="0"> 
    <Num>a</Num> 
    </Number> 
    <Number id="1"> 
    <Num>b</Num> 
    </Number> 
    <Number id="2"> 
    <Num>c</Num> 
    </Number> 
</Root>