的LABAs draugas,我认为你正在寻找这样的事情,
static void Main(string[] args)
{
List<Ring> rings = new List<Ring>();
rings.Add(new Ring { Id = 1, Name = "siauliai", Metalas = "s" });
rings.Add(new Ring { Id = 2, Name = "kaunas", Metalas = "k" });
rings.Add(new Ring { Id = 3, Name = "vilnius", Metalas = "v" });
rings.Add(new Ring { Id = 4, Name = "klapedia", Metalas = "ka" });
rings.Add(new Ring { Id = 5, Name = "siauliai", Metalas = "s" });
SaveDataToFile(rings);
Console.ReadKey();
}
private static void SaveDataToFile(List<Ring> rings)
{
using (StreamWriter writer = new StreamWriter(@"Metalai.csv"))
{
List<string> ringMetalas = new List<string>();
writer.WriteLine("Metalai;Duplication");
foreach (var ring in rings)
{
if (!ringMetalas.Contains(ring.Metalas))
{
var duplicationCount = rings.Count(r => r.Metalas == ring.Metalas);
ringMetalas.Add(ring.Metalas);
var mesage = $"{ring.Metalas}";
if (duplicationCount > 1)
mesage += $";{duplicationCount}";
writer.WriteLine("{0}", mesage);
}
}
}
}
结果像;
Metalai Duplication
s 2
k
v
ka
希望它能够对您有帮助
您可以尝试使用LINQ组和计算每个组 – daniell89
中的元素如何将看起来像exacly?我相当新的C#,所以我不是那么好 –