2016-02-18 49 views
0

我正在嘗試創建一個動態xelement。創建XElement對象

我想的XElement輸出爲:

<text> text1 </text> 
<text> text2 </text> 

所以,我寫代碼:

 string[] arr = new string[2]; 
     arr[0] = "text1"; 
     arr[1] = "text2"; 

     XElement xElement1; 
     XElement xElement12 = new XElement(string.Empty); 
     for (int i=0;i<arr.Length;i++) 
     { 
      xElement1 = new XElement("text"); 
      xElement1.Add(arr[i].ToString()); 
      xElement12.Add(xElement1); 
     } 

但是,與此代碼,我得到的輸出:

<text> 
    <text> text1 </text> 
    <text> text2 </text> 
</text> 

任何人都可以請讓我知道。我想要Xelement中的這些數據,並且陣列中可以有n個數據。

+2

單個「XElement」映射到單個XML元素。看起來你想要一個'List '。另請注意,有效的XML文檔[只有一個根元素](https://en.wikipedia.org/wiki/Root_element)。 – dbc

回答

0

這樣做更清潔,更易於閱讀。可以動態替換字符串

  XElement root = new XElement("root", new XElement[] { 
       new XElement("text", "text1"), 
       new XElement("text", "text2") 
      }); 
+0

我不知道我會得到多少數組元素。我正在充滿活力。所以我不知道我是否有text1,text2或text3或全部。 –

+0

您的解決方案是調用XElement構造函數,然後添加標記名和值。它可以像我的代碼一樣完成。 – jdweng