最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
XmlDocument 创新对象时, 产生 xmlns="" 的解决方案
时间:2022-06-24 20:05:44 编辑:袖梨 来源:一聚教程网
1. 读取时,应该添加NameSpace.
| 代码如下 | 复制代码 |
| var exclDef = excl.SelectSingleNode(@"ns:worksheet/ns:sheetData", excl.GetNameSpaceManager("ns")); public static XmlNamespaceManager GetNameSpaceManager(this XmlDocument xml, string NameSpace) { XmlNamespaceManager nsmgr = new XmlNamespaceManager(xml.NameTable); nsmgr.AddNamespace(NameSpace, xml.DocumentElement.NamespaceURI); return nsmgr; } |
|
2. 如果创建 节点,没有指明 NamespaceURI , 则会生成 xmlns="" , 其原因,参考:
/post_read.asp?BlogID=2524806&PostID=21711977
如果 ABC 三级的 NameSpaceURI 分别是 XYY , 那么, 生成的 ABC 的 NameSpaceURI分别是 AB空, C 不会生成 NameSpaceURI , 因为, C和其父项具有相同的 NameSpaceURI .
所以在创建 节点时, 为了不出现 NameSpaceURI , 请保持和节点父项相同的 NameSpaceURI .
var si = e.OwnerDocument.CreateElement("si", e.NamespaceURI); e.AppendChild(si);
另外, 创新 属性时, 不要指定 NameSpaceURI , 即 生成的 Xml 就没有特定的 NameSpaceURI .
var r = excl.CreateAttribute("r");
相关文章
- 崩坏星穹铁道北辰芽衣上线时间 北辰芽衣什么时候出 11-30
- 星球重启开普勒港地热能研究所宝箱位置分享 11-30
- 光遇天才建筑师复刻先祖位置 天才建筑师在哪 11-30
- 龙族卡塞尔之门升阶角色方法 11-30
- 宝可梦朱紫蓝之圆盘狮子王彩蛋位置分享 11-30
- 崩坏星穹铁道幸运点心合成配方分享 11-30