4
Я ищу запрос linq для Xdoc для группировки подмножеством узлов XML. Я только смог получить эту работу, чтобы вернуть подмножество данных, но мне нужен весь XML-документ, который передается только с определенными узлами.Linq to XDocument Group по подмножеству
<Root>
<Elementname1>
</Elementname1>
<Elementname2>
</Elementname2>
<Elementname3 attrname="test1">
<Child>
</Child>
</Elementname3>
<Elementname3 attrname="test1">
<Child>
</Child>
</Elementname3>
</Root>
Этот код:
var result =
from row in xDoc.Descendants("Elementname3")
group row by (string)row.Attribute("attrname") into g
select g.First();
возвращается:
<Elementname3 attrname="test1">
<Child></Child>
</Elementname3>
Ожидая:
<Root>
<Elementname1>
</Elementname1>
<Elementname2>
</Elementname2>
<Elementname3 attrname="test1">
<Child>
</Child>
</Elementname3>
</Root>
Я понимаю, так как потомок элемента, начиная с elementname3; просто не уверен, как изложить запрос linq, чтобы начать с корневого узла и группы, как и ожидалось.