将属性添加到 XML 节点总是失败
本文关键字:失败 节点 XML 属性 添加 | 更新日期: 2023-09-27 18:35:02
尝试添加属性时,我总是在下面出现异常,为什么它不起作用?
前缀">不能从"重新定义为"http://ws.plimus.com" 在同一起始元素标记中。
法典
var docXml = new XElement("param-encryption",
new XAttribute("xmlns", "http://ws.plimus.com"),
new XElement("parameters"));
var s = docXml.ToString();
我想得到这样的结果
<param-encryption xmlns="http://ws.plimus.com">
<parameters>
</parameters>
</param-encryption>
这种最简单的方法是让 LINQ to XML 通过在元素名称中指定命名空间来自动执行此操作:
XNamespace ns = "http://ws.plimus.com";
var docXml = new XElement(ns + "param-encryption", new XElement(ns + "parameters"));
docXml.ToString()
结果:
<param-encryption xmlns="http://ws.plimus.com">
<parameters />
</param-encryption>
试试这个 -
XNamespace aw = "http://ws.plimus.com";
XElement root = new XElement("param-encryption",
new XAttribute(XNamespace.Xmlns + "aw", "http://ws.plimus.com"),
new XElement("Child", "child content")
);
Console.WriteLine(root);
(编辑(:-如果您不想要命名空间别名,请使用此选项
XNamespace aw = "http://ws.plimus.com";
XElement root = new XElement(aw + "param-encryption",
new XAttribute("xmlns", "http://ws.plimus.com"),
new XElement( aw + "Child", "child content")
);