ยกตัวอย่างง่ายๆดังต่อไปนี้:
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 มีหมายเลขเดียวกันของรายการเป็นรายการ แต่ฉันจะคาดหวังเช่น "สาม" และ "สาม" จะถือว่าเท่ากัน
ฉันขาดอะไรไปหรือนี่เป็นปัญหากับตัวดำเนินการที่แตกต่างกัน