gpt4 book ai didi

c# - XmlNode.SelectNodes 的基础知识?

转载 作者:数据小太阳 更新时间:2023-10-29 02:25:21 24 4
gpt4 key购买 nike

我不确定为什么这不起作用。

我有一个已知格式的 XmlNode。它是:

<[setting-name]>
<dictionary>
<[block-of-xml-to-process]/>
<[block-of-xml-to-process]/>
<[block-of-xml-to-process]/>
</dictionary>
</[setting-name]>

我在名为pattern 的变量中引用了节点。我想要一个可迭代的节点集合,每个节点都由上面的 [block-of-xml-to-process] 表示。 block 的名称和结构在这一点上是未知的。 [设置名称] 已知。

这看起来很简单。我可以想到六个应该指向 block 的 XPATH 表达式。我试过:

XmlNodeList kvpsList = pattern.SelectNodes(String.Format(@"/{0}/dictionary/*", _CollectionName));
XmlNodeList kvpsList = pattern.SelectNodes(String.Format(@"{0}/dictionary/*", _CollectionName));
XmlNodeList kvpsList = pattern.SelectNodes(@"//dictionary/*");
XmlNodeList kvpsList = pattern.SelectNodes(@"//dictionary");

但是,我显然对 XPATH 或 .SelectNodes 的一些特殊技巧缺乏一些基本的了解,因为它们都不能始终如一地工作。

我做错了什么?

最佳答案

您是否尝试过从 XPath 字符串中删除“@”??

XmlNodeList kvpsList = pattern.SelectNodes("//dictionary");

那应该有用 - 每天都对我有用 :-)

马克

关于c# - XmlNode.SelectNodes 的基础知识?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/699184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com