给出以下简单示例:
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();
Run Code Online (Sandbox Code Playgroud)
似乎CaseInsensitiveComparer实际上并不用于进行不区分大小写的比较.
换句话说,distinctList 包含与列表相同数量的项目.相反,我希望,例如,"三"和"三"被认为是平等的.
我错过了什么,或者这是Distinct运营商的问题?