摘要:
.net 中 IEqualityComparer 和 IComparer 经常在 Linq 和 一些泛型集合、泛型字典类中用作参数。不过因其复杂性,包含 IEqualityComparer 或 IComparer 类型参数的函数一般使用频度不高。
尽管如此,有些情况下确非用不可,不得不创建一些新的类来实现 IEqualityComparer 或 IComparer 接口。不但增加了代码量,还对程序结构产生影响,新加入的类命名、放置、共用都是问题。
因此,我们期望能简单快速直接的创建 IEqualityComparer 和 IComparer 的实例。 阅读全文
随笔档案-2011年8月2日
何止 Linq 的 Distinct 不给力
2011-08-02 18:45 by 鹤冲天, 9019 阅读, 收藏, 编辑
摘要:
昨日有文《Linq的Distinct太不给力了》,本文更深一步讨论。
.net 中经常把 IEqualityComparer 用作某些重载的参数。
虽然这些重载在日常使用中并不频繁, 不过一旦用到,大多要创建新类实现 IEqualityComparer,繁琐不给力。
本文创建 Equality 泛型类,配合一个 lambda 表达式可快速创建 IEqualityComparer 的实例。 阅读全文