【发布时间】:2011-08-18 16:22:44
【问题描述】:
基于this,看起来每次我想要获取节点元素名称或文本值或其他任何内容时,我都需要使用 switch-case。
所以我必须使用这样的东西吗:
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
nodeName = reader.Name;
break;
}
}
或者我是否遗漏了一些东西,它可以变得更短更优雅(我需要使用 XmlReader,并且无法使用 LINQ to XML)?为了获得这些小信息而不得不在任何地方使用所有这些开关盒混乱的想法对我来说并不是很有吸引力。谢谢。
【问题讨论】:
-
+1:对于所有提到的有效点。我自己想知道是否存在更好的解决方案。根据我的经验,我正在使用一个使用 switch、case 实现相同功能的库。它是由经验丰富的开发人员编写的。这让我相信这可能是唯一的方法。