选择子元素具有值的XElement

给出以下XML:

  1 2.99   

如何根据值为“1”的子元素“id”选择“platform”元素作为XElement对象?

我到目前为止:

 XDocument xPlatformXml = new XDocument(); XElement xel = xPlatformXml.Element("platforms").Elements("platform").Where(x => x.Value == "1").SingleOrDefault(); 

但这是寻找“平台”元素而不是“id”的价值。

 XDocument xPlatformXml = new XDocument(); XElement xel = xPlatformXml.Element("platforms") .Elements("platform") .Where(x => x.Element("id").Value == "1") .SingleOrDefault(); 

或者使用XElement进行int转换:

 XDocument xPlatformXml = new XDocument(); XElement xel = xPlatformXml.Element("platforms") .Elements("platform") .Where(x => (int)x.Element("id") == 1) .SingleOrDefault();