XmlReader.Name返回一个空值
本文关键字:一个 空值 Name 返回 XmlReader | 更新日期: 2023-09-27 17:49:27
我正在读取来自外部服务器的数据。数据输入很好,我可以设置所有的文本值,但当我试图读取tagname时,它不起作用。我的总体目标是在一列中填充标记名,在另一列中填充标记值的dataGridView。重申一下,我有标记值,但没有标记名。问题代码:
if (xmlRead.NodeType == XmlNodeType.Text){
Console.WriteLine(xmlRead.Name + " : " + xmlRead.Value);
}
其中xmlRead是我的XmlReader。
结果是: Beef
示例数据格式为<type>Beef</type>
假设您有一个XML结构如下:
<element>Some Text</element>
首先,XmlReader将首先命中类型为XmlNodeType.Element
、名称为element
和空Value
的节点。
然后它将击中一个类型为XmlNodeType.Text
,没有名称,值为"Some Text"
的节点。
然后它将击中一个类型为XmlNodeType.EndElement
,名称为element
和空Value
的节点。
您试图在没有名称的位置获取名称。要么在读取元素时获取名称,然后再读取文本节点,要么在读取元素时获取其名称,然后立即调用ReadElementContentAsString()
以获取内部文本节点的内容。
Text节点没有名称,因此xmlRead.Name
将永远不会返回名称。