【发布时间】:2009-12-16 10:41:58
【问题描述】:
我有一个对象列表。这些对象由一个自定义类组成,该类基本上包含两个字符串字段String1 和String2。
我需要知道的是,这些字符串中的任何一个是否在该列表中重复。所以我想知道是objectA.String1 == objectB.String1,还是ObjectA.String2 == ObjectB.String2,还是ObjectA.String1 == ObjectB.String",还是ObjectA.String2 == ObjectB.String1。
另外,我想将每个包含重复字符串的对象标记为具有重复字符串(对象上带有 bool HasDuplicate)。
所以当重复检测运行时,我想简单地遍历列表,如下所示:
foreach (var item in duplicationList)
if (item.HasDuplicate)
Console.WriteLine("Duplicate detected!");
这似乎是一个用 LINQ 解决的好问题,但我终其一生都无法找到一个好的查询。所以我已经使用'good-old' foreach 解决了它,但我仍然对 LINQ 版本感兴趣。
【问题讨论】:
标签: c# .net linq linq-to-objects