在C#中,可以使用LINQ来按XML元素值进行分组并进行ForEach循环。下面是一个示例代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Xml.Linq;
public class Program
{
public static void Main(string[] args)
{
string xml = @"
1
2
1
3
2
";
XDocument doc = XDocument.Parse(xml);
var groups = doc.Descendants("Element")
.GroupBy(e => e.Value);
foreach (var group in groups)
{
Console.WriteLine($"Group: {group.Key}");
foreach (var element in group)
{
Console.WriteLine($"Element: {element.Value}");
}
}
}
}
上述代码首先定义了一个包含XML内容的字符串。然后,通过使用XDocument.Parse()
方法将字符串解析为一个XDocument
对象。
接下来,使用doc.Descendants("Element")
方法获取所有名为"Element"的元素,并使用.GroupBy(e => e.Value)
方法按元素值进行分组。
最后,通过两个嵌套的ForEach循环遍历每个分组的元素,并将分组的键和元素的值打印到控制台上。