我有麻煩沿此線生成XML設置XML命名空間:與System.Xml.Linq的API
<Root xmlns:brk="http://somewhere">
<child1>
<brk:node1>123456</brk:node1>
<brk:node2>500000000</brk:node2>
</child1>
</Root>
此代碼讓我最的方式,但我不能讓'brk'命名空間在節點前面;
var rootNode = new XElement("Root");
rootNode.Add(new XAttribute(XNamespace.Xmlns + "brk", "http://somewhere"));
var childNode = new XElement("child1");
childNode.Add(new XElement("node1",123456));
rootNode.Add(childNode);
我已經試過這樣:
XNamespace brk = "http://somewhere";
childNode.Add(new XElement(brk+"node1",123456));
這
XNamespace brk = "http://somewhere";
childNode.Add(new XElement("brk:node1",123456));
但兩者都將導致異常。
你會得到什麼例外?當使用childNode.Add(new XElement(brk +「node1」,123456))時,我沒有得到任何異常和正確的結果。 – 2009-02-09 17:29:21
System.Xml.XmlException:在同一起始元素標記內,前綴''不能從''重新定義爲'http:// somewhere'。 – Dan 2009-02-09 17:42:53