无论如何,有没有做类似以下内容的LINQ2SQL查询:
var result = source.GroupBy(a => new { a.Column1, a.Column2 });
要么
var result = from s in source
group s by new { s.Column1, s.Column2 } into c
select new { Column1 = c.Key.Column1, Column2 = c.Key.Column2 };
但是忽略分组列内容的大小写?
最佳答案
您可以将StringComparer.InvariantCultureIgnoreCase
传递给GroupBy
扩展方法。
var result = source.GroupBy(a => new { a.Column1, a.Column2 },
StringComparer.InvariantCultureIgnoreCase);
或者,您可以按照Hamlet Hakobyan的建议在每个字段上使用
ToUpperInvariant
。我建议使用ToUpperInvariant
或ToUpper
而不是ToLower
或ToLowerInvariant
,因为它已针对编程比较目的进行了优化。关于c# - 多列不区分大小写的组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16190180/