C# 从xml访问数据的Linq查询
我有一个包含如下元素的XML文件C# 从xml访问数据的Linq查询,c#,linq,linq-to-xml,C#,Linq,Linq To Xml,我有一个包含如下元素的XML文件 <root> <gp> <i>1</i> <i>3</i> <i>5</i> </gp> <gp> <i>5</i> <i>6</i> </gp> . . </
<root>
<gp>
<i>1</i>
<i>3</i>
<i>5</i>
</gp>
<gp>
<i>5</i>
<i>6</i>
</gp>
.
.
</root>
1.
3.
5.
5.
6.
.
.
现在我想写一个查询,通过它我将获得所有gp
元素,其中包含值为5的
元素`
var results = from gp in doc.Descendants("gp")
where gp.Elements("i").Any(i => (int)i == 5)
select gp
在基于方法的语法中:
var results = doc.Descendants("gp").Where(gp => gp.Elements("i").Any(i => (int)i == 5));
Ienumerable variable=document.Elements(“gp”)。其中(p=>p)。现在我被卡住了,因为这里我们还必须迭代元素。我认为最好使用
i.value==“5”
,我认为不能将XElement转换为int。@ErikPhilips:可以,试试看out@ErikPhilips:是的,您可以。而且不仅限于int: