【发布时间】:2011-02-21 21:32:40
【问题描述】:
如何设置现有 XDocument 的默认命名空间(以便我可以使用 DataContractSerializer 对其进行反序列化)。我尝试了以下方法:
var doc = XDocument.Parse("<widget/>");
var attrib = new XAttribute("xmlns",
"http://schemas.datacontract.org/2004/07/Widgets");
doc.Root.Add(attrib);
我得到的例外是The prefix '' cannot be redefined from '' to 'http://schemas.datacontract.org/2004/07/Widgets' within the same start element tag.
有什么想法吗?
【问题讨论】:
-
这不是 Linq to XML 的缺陷吗?
-
尝试使用 XElemenet 而不是 XDocument 来查看它是否有效(参见 MSDN:msdn.microsoft.com/en-us/library/bb387069(v=vs.100).aspx)
标签: c#