考虑以下简单示例:
List<string> list = new List<string>() { "One", "Two", "Three", "three", "Four", "Five" };
CaseInsensitiveComparer ignoreCaseComparer = new CaseInsensitiveComparer();
var distinctList = list.Distinct(ignoreCaseComparer as IEqualityComparer<string>).ToList();
看起来 CaseInsensitiveComparer 并未被用于进行不区分大小写的比较。
换句话说,distinctList 包含的项目数量与 list 相同。 我期望 "Three" 和 "three" 被视为相等。
我是否忽略了什么或这是 Distinct 操作符的问题?