我正在尝试阅读这段XML。阅读XML属性
我不知道我怎么可能只读与价值= “2012-11-15Z”
所以下面的一个节点期:
这是我使用的代码
using (XmlReader reader = XmlReader.Create("http://datapoint.metoffice.gov.uk/public/data/val/wxfcs/all/xml/351352?res=3hourly&key=99b9f578-ad3d-446c-9d29-0bbee028b483"))
{
reader.MoveToContent();
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element
&& reader.Name == "Period")
{
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element &&
reader.Name == "Rep")
{
first.Text = reader.GetAttribute("T");
}
}
}
}
}
什么是我只读这个节点?
我应该写
if (reader.NodeType == XmlNodeType.Element && reader.Name == "Period" && reader.GetAttribute("value") == "2012-11-15Z")
这似乎并没有工作..
有人能帮助我吗?
那么我将如何获得属性“T”?因为这是返回所有的值,如360 570 720等。 – Kiwimoisi
@Demipouce看到更新的答案。它将返回'List',其中包含选定时间段内所有“Rep”元素的'T'属性的值。 *顺便说一句*似乎xpath要慢http://blog.dreamlabsolutions.com/post/2008/12/04/LINQ-to-XML-and-LINQ-to-XML-with-XPath-performance-review.aspx –
好吧 !我看到了,对不起,我刚刚在关于这些属性的时刻有点困惑。 因此,它返回我可以用作普通列表的列表? – Kiwimoisi