在xml中选择属性

时间:2014-01-10 23:59:33

标签: c# xml binding windows-phone-8 xml-parsing

我正在尝试在下面的xml代码中选择“示例语言”。 这是C#:

XNamespace gml = "http://www.example.net/gdl";
XElement Xmlwater = XElement.Parse(e.Result);

listBox3.ItemsSource = from Zwemwater in Xmlwater.Descendants(zwr + "Location")
        select new water
{
       water_name = water.Element(zwr + "Name").Value,
       water_language = water.Element(zwr + "language").Value, // How to select the "nl" ? 
};

这是XML:

<zwr:Location>
   <zwr:Name>test<zwr:Name>
   <zwr:Example language="nl"> Example text </zwr:beschrijving>
   <zwr:Example language="en"/> 
</zwr:Location>

获取Example语言=“nl以便我可以绑定它的最佳方法是什么。 提前谢谢。

2 个答案:

答案 0 :(得分:1)

尝试.Attributes属性而不是.Element属性。

water_language = water.Attributes(zwr + "language").Value

答案 1 :(得分:1)

假设water<zwr:Location>元素,您可以执行以下操作:

water_language = water.Element(zwr + "Example").Attribute(zwr + "language").Value

这将选择Location的名为Example的子元素,然后获取该子元素的language属性的值。 PS:我不确定属性名称是否考虑名称空间,但在上面的示例中我假设它是