Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# XmlReader-自动关闭元素不触发EndElement事件?_C#_.net_Xml_.net 2.0_Xmlreader - Fatal编程技术网

C# XmlReader-自动关闭元素不触发EndElement事件?

C# XmlReader-自动关闭元素不触发EndElement事件?,c#,.net,xml,.net-2.0,xmlreader,C#,.net,Xml,.net 2.0,Xmlreader,我正在使用.NET中的XmlReader使用循环解析XML文件: while (xml.Read()) { switch xml.NodeType { case XmlNodeType.Element: //Do something case XmlNodeType.Text: //Do something case XmlNodeType.EndElement: //Do something } } 我想知道下

我正在使用.NET中的XmlReader使用循环解析XML文件:

while (xml.Read()) {
   switch xml.NodeType {
     case XmlNodeType.Element:
      //Do something
     case XmlNodeType.Text:
      //Do something
     case XmlNodeType.EndElement:  
      //Do something
   }
}
我想知道下面的XML代码不生成某些EndElement节点是否正常?请注意/>前面缺少的空格,但我认为这不是问题所在

<date month="November" year="2001"/>
<zone name="xml"/>

是否有不同的节点类型或属性来指示自动关闭元素?

否,请查看

在该属性的文档中:

没有相应的EndElement节点 为空元素生成


我如何区分当前节点类型为StartElement和何时的区别?IsEmptyElement在这两种情况下都是正确的。@BrianWarshaw:基本上,您可以看到是否存在EndElement节点。。。当你在StartElement上的时候,我不知道有什么方法可以立即做到。谢谢——事实证明,我可能错了,在那些情况下,我认为IsEmptyElement是正确的。我盯着这个输出看了太久了:-