如何使用LINQ查询得到的XElement值时,XElements具有相同的名称 [英] How to use a LINQ query to get XElement values when XElements have same name
本文介绍了如何使用LINQ查询得到的XElement值时,XElements具有相同的名称的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有类似下面的一段XML:
<表>
<记录和GT;
<外勤及GT; Value1_1< /场及GT;
<外勤及GT; Value1_2< /场及GT;
< /记录和GT;
<记录和GT;
<外勤及GT; Value2_1< /场及GT;
<外勤及GT; Value2_2< /场及GT;
< /记录和GT;
< /表>
我想是产生一个IEnumerable,我可以作为一个数据源分配一个LINQ查询数据网格。我至今如下:
VAR TEMP =从table.Elements记录(记录)
。选择所需record.Element(田)。价值
这是我可以有多个域元素的事实。是我的绊脚石
在上面的例子中,我需要的是像一个的IEnumerable<字符串,字符串>
。
数据网格会是这个样子:
Value1_1,Value1_2
Value2_1,Value2_2
解决方案
请问这样的帮助呢?
VAR一个=从纪录table.Elements(记录)
选择新的
{
一路=(字符串)记录.Elements()的ElementAt(0),
两=(字符串)record.Elements()的ElementAt(1)
}。。
I have a piece of xml like the following:
<Table>
<Record>
<Field>Value1_1</Field>
<Field>Value1_2</Field>
</Record>
<Record>
<Field>Value2_1</Field>
<Field>Value2_2</Field>
</Record>
</Table>
What i would like is a LINQ query that generates an IEnumerable that i can assign as the datasource of a DataGrid. What i have so far is as follows:
var temp = from record in table.Elements("Record")
select record.Element("Field").Value
The fact that I can have multiple field elements is my stumbling block.
In the above example, what i need is something like an IEnumerable<string,string>
.
The datagrid would look something like this:
Value1_1, Value1_2
Value2_1, Value2_2
解决方案
Would something like this help?
var a = from record in table.Elements("Record")
select new
{
one = (string)record.Elements().ElementAt(0),
two = (string)record.Elements().ElementAt(1)
};
这篇关于如何使用LINQ查询得到的XElement值时,XElements具有相同的名称的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文