XmlDocument创建对象时, 产生 xmlns="" 的解决方案
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-18 15:41:16 浏览: 评论:0
今天做开发时碰到的XmlDocument 创建对象时,产生 xmlns=\"\" 的,经过分析总结了问题所在,有需要朋友参考一下,可能能帮助你解决这个问题.
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");
Tags: XmlDocument xmlns= " "
相关文章
- ·php留言板制作教程(2014-03-11)
- ·PHP $_SERVER["SERVER_NAME"]与 $_SERVER['HTTP_HOST'] 区别(2014-06-23)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)