2010-03-25 51 views
4

如何获取XmlNode标记中参数的值。例如:如何从C#中的XmlNode获取参数值#

<weather time-layout="k-p24h-n7-1"> 
    <name>Weather Type, Coverage, and Intensity</name> 
    <weather-conditions weather-summary="Mostly Sunny"/> 
</weather> 

我想在节点'weather-conditions'中获取参数'weather-summary'的值。

回答

7
var node = xmldoc.SelectSingleNode("weather/weather-conditions"); 
var attr = node.Attributes["weather-summary"]; 
+0

完美。谢谢! – Brian 2010-03-25 03:38:40

3

在完整的利益时,.NET 3.5的方式应给予还有:

假设

XDocument doc = XDocument.Parse(@"<weather time-layout='k-p24h-n7-1'> 
    <name>Weather Type, Coverage, and Intensity</name> 
    <weather-conditions weather-summary='Mostly Sunny'/></weather>"); 

然后要么

return doc.Element("weather").Element("weather-conditions").Attribute("weather-summary").Value; 

或者

return doc.Descendants("weather-conditions").First().Attribute("weather-summary").Value; 

会给你同样的答案。