命名规则:
1.名称的开头必须是字母或下划线“_”;
2.标记名称中不能有空格;
3.名称的字符串只能包含字母,数字,“_”,“-”,“.”;
XML元素名称中可以有冒号:吗?
在做项目的时候偶然发现WordXml文档中的节点基本都是带冒号的,例如<c:plotArea>。
冒号前的代表是的命名空间,冒号后的才是节点名称。
读取时:XDocument xDoc = XDocument.Load("Doc1.xml");
XNamespace pn = @"http://schemas.openxmlformats.org/drawingml/2006/chart";
var ele = from item in xDoc.Descendants(pn + "plotArea")
select item.Value;
先声明一个XNamespace类型的变量,把XML文件中出现的命名空间赋值给它,在读取节点的时候,使pn与真正的节点名称plotArea进行拼接就可以了!
原因:在Doc1.xml中其实是多个xml一起工作的,由于多个文档都包含带有不同内容和定义的节点元素,就会发生命名冲突,加上命名空间使用可以避免发生冲突