C# 如何使用xPath或其他方法获取最后的XML项?
在我注意到需要最后一个节点的子元素之前,我已经使用了第一个节点的子元素C# 如何使用xPath或其他方法获取最后的XML项?,c#,.net,xpath,xmldocument,C#,.net,Xpath,Xmldocument,在我注意到需要最后一个节点的子元素之前,我已经使用了第一个节点的子元素PovprecnaPlaca 供参考的XML图片: 感谢所有有用的答案 XML如下所示: 2017-07-01T00:00:00 1603,00 1045,12 1593,10 1039,55 2017-08-01T00:00:00 1602,98 1045,45 1613,62 1051,73 从每个位置的最后一个PovprecnaPlaca获取数据节点 var nodes = xdoc.XPathSelectEleme
PovprecnaPlaca
供参考的XML图片:
感谢所有有用的答案
XML如下所示:
2017-07-01T00:00:00
1603,00
1045,12
1593,10
1039,55
2017-08-01T00:00:00
1602,98
1045,45
1613,62
1051,73
从每个位置的最后一个PovprecnaPlaca
获取数据
节点
var nodes = xdoc.XPathSelectElements("//PovprecnaPlaca[last()]/Datum");
获取每个节点内的文本
List<string> results = nodes.Select(d => d.Value).ToList();
List results=nodes.Select(d=>d.Value.ToList();
您的attemp不起作用的两个原因:1)它从文档的根节点“/”开始,在这个级别上没有PovprecnaPlaca
节点。2) 通过调用text()
它得到XText
,这在Linq中引发了一个异常,因为当调用XPathSelectElements()
从每个位置的最后一个PovprecnaPlaca
节点获取数据
时,它期望节点出现异常
var nodes = xdoc.XPathSelectElements("//PovprecnaPlaca[last()]/Datum");
获取每个节点内的文本
List<string> results = nodes.Select(d => d.Value).ToList();
List results=nodes.Select(d=>d.Value.ToList();
您的attemp不起作用的两个原因:1)它从文档的根节点“/”开始,在这个级别上没有PovprecnaPlaca
节点。2) 通过调用text()
它得到了XText
,这在Linq中引发了一个异常,因为当调用XPathSelectElements()
时,它预期会出现节点,因此您使用的Xpath不正确。也需要投出结果。您是只想要文件的最后一个日期,还是每个Place
节点的最后一个日期?请将您的代码添加到问题中,而不是图像。感谢您的反馈,我将添加我的代码。我想要每个位置节点的最后一个,我只是尝试获取最后一个日期。您使用的Xpath不正确。也需要投出结果。您是只想要文件的最后一个日期,还是每个Place
节点的最后一个日期?请将您的代码添加到问题中,而不是图像。感谢您的反馈,我将添加我的代码。我想要每个place节点的最后一个,我只是尝试获取最后一个日期。在调试时,我用Placa更改了PovprecnaPlaca,所以我一开始就做对了。但我无法让它工作,可能是因为我不知道如何使用“/”和“/”。感谢您的回答:)我在调试时用Placa更改了PovprecnaPlaca,所以我一开始就做对了。但我无法让它工作,可能是因为我不知道如何使用“/”和“/”。谢谢你的回答:)