1

我有一个XElement具有以下结构的对象。如何从属性不同的根节点中选择所有CalcConceptId子节点,并将它们作为s 存储在数组/列表中?我希望能够将每个孩子存储为另一个,这样我就可以遍历它们并从每个孩子中取出和数据节点。TestResultsDataPointValueXElementXElementSeriesAsOfDate

<TestResults RSSD="123456">
  <CalcConceptId Id="110" DataPointValue="10">
    <SeriesAsOfDate Value="2013-07-10T00:00:00">
      <Data AsOfDate="7/10/2013" ExpectedValue="1" />
      <Data AsOfDate="7/3/2013" ExpectedValue="14" />
      <Data AsOfDate="6/26/2013" ExpectedValue="55" />
    </SeriesAsOfDate>
  </CalcConceptId>
  <CalcConceptId Id="110" DataPointValue="20">
    <SeriesAsOfDate Value="2013-07-10T00:00:00">
      <Data AsOfDate="7/10/2013" ExpectedValue="4" />
      <Data AsOfDate="7/3/2013" ExpectedValue="34" />
      <Data AsOfDate="6/26/2013" ExpectedValue="1" />
    </SeriesAsOfDate>
  </CalcConceptId>
</TestResults>
4

2 回答 2

1

我认为您想要按 DataPointValue 分组的所有 CalcConceptId 节点,但有点不清楚“DataPointValue 的不同之处”是什么意思。

无论如何,这就是我认为你想要的......

    var calcConceptIdGroupedByDataPointValue =
        doc.Descendants("CalcConceptId")
           .GroupBy(calcConceptId => calcConceptId.Attribute("DataPointValue"));
于 2013-07-15T20:30:58.803 回答
0

我不是 100% 确定......但如果我得到你的要求,你在找这个吗?

//assuming the XElement is called Data:
var result = 
    data.Elements().GroupBy(x => int.Parse(x.Attribute("DataPointValue")))
        .Select(g => g.First());
于 2013-07-15T20:24:42.440 回答