我如何收集类似的 xml 标签到 c# 中带有 Xml.Linq 的组?

How I can collect similar xml tag to groups with Xml.Linq in c#?

我有一个 xml 这种风格的文件

<all_elements>
    <elements>
            <element attribute="7" />
            <element attribute="1" />
            <element attribute="6" />
    </elements>
    <elements>
            <element attribute="2" />
            <element attribute="8" />
    </elements>
    .
    .
    .
</all_elements>

我想计算每个 元素的平均值 与 c# Xml.Linq 分开,例如:

average1= 4.66
average2= 5.00

我知道我必须使用 XElement 或 XDocument 类型并在 XML 上使用 Query 并且我可以计算所有元素的总和和平均值而不考虑顶级标签 (elements), 但我不知道如何计算每个 元素的平均值 ...

如何使用 c# Xml.Linq 完成此操作?有什么想法吗?

您需要嵌套查询:

root.Elements("elements").Select(
    e => e.Elements("element").Average(f => (int)f.Attribute("attribute"))
)