2012-04-30 35 views
0

我得到一組具有默認值的「屬性」,我想創建一個字符串,它是下面的一部分xml文檔(不是完整的xml文檔)。我想在每個屬性之間有一個「標籤」。在這種情況下,我發現字符串連接是可行的選項。在.Net中有沒有更好的方法來做到這一點?以字符串形式創建XML文檔的一部分

<XmlNodes> 
<ChildNode Attribute1 ="100" Attribute2="200" Attribute3 ="0"/> 
<ChildNode Attribute1="100"  Attribute2="200" Attribute3 ="0"/> 
... 
</XmlNodes> 
+0

聽起來不太難,但你爲什麼要這樣做? – yamen

+0

@yamen:在我們的一個內部Web應用程序中,有一個包含100個項目的XMLText字段。當用戶第一次創建該XMLText字段時,這非常耗時。所以我試圖用給定屬性的默認值自動創建這個xml腳本。 – ABCD

+0

這很簡單 - 但爲什麼它必須與製表符和所有內容對齊?是這樣編輯更簡單嗎?也許腳本可以用另一種方式接受輸入(如CSV),然後轉換爲XML? – yamen

回答

1

這裏有一個有趣的小黑客,至少只有訴諸字符串操作尾盤片:

var nodes = new XElement("XmlNodes"); 
foreach (var i in Enumerable.Range(1,10)) 
{ 
    nodes.Add(new XElement("ChildNode", 
     new XAttribute("Attribute1", 100), 
     new XAttribute("Attribute2", 200), 
     new XAttribute("Attribute3", 0))); 
} 

var result = nodes.ToString().Replace("\" A", "\"\tA"); // **" A** becomes **"\tA** 

但我認爲,如果這是關於提供「模板」的人進行編輯,然後你最好讓他們以非XML格式(如CSV)進行編輯,然後在解析時轉換爲XML。

+0

+1謝謝衙門 – ABCD