XmlReader - 自关闭元素不会触发 EndElement 事件?
我正在 .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"/>
是否有不同的 NodeType 或属性来指示自关闭元素?
I am using XmlReader in .NET to parse an XML file using a loop:
while (xml.Read()) {
switch xml.NodeType {
case XmlNodeType.Element:
//Do something
case XmlNodeType.Text:
//Do something
case XmlNodeType.EndElement:
//Do something
}
}
I was wondering if it was normal that the following XML code does not produce some EndElement nodes? Please note the missing space before the /> but I don't think that's the problem.
<date month="November" year="2001"/>
<zone name="xml"/>
Is there a different NodeType or property to indicate a self-closing element?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不,您可以通过查看 XmlReader.IsEmptyElement。
在该属性的文档中:
No, you check it by looking at XmlReader.IsEmptyElement.
In the docs for that property: