Mam tabelę danych i chcę wykonać grupę niewrażliwą na wielkość liter przez kolumnę tabeli danych (na przykład Column1
ciągu znaków typu). Zauważyłem, że zwykle LINQ do DataSet wykonuje porównanie wielkości liter. Na przykład, jeśli Column1
ma dwie wartości ciągu "Test" i "test", po zastosowaniu group by
zwraca dwa osobne wiersze z wartościami "Test" i "test", zamiast jednego.LINQ do grupy niewrażliwych na wielkość liter DataSet:
Zapytanie jest:
var countGroupQuery = from table in dataTable.AsEnumerable()
group table by table.Field<string>(Column1) into groupedTable
select new
{
value = groupedTable.Key,
count = groupedTable.Count()
};
jest jakiś sposób, aby wykonać przypadku niewrażliwe group by
tak, że w powyższym przykładzie I uzyskać tylko jeden rząd z jednej wartości (albo „test” i „Test”), ? ToUpper
lub ToLower
faktycznie zmienić wartości albo wielkimi literami lub małymi literami, a nie przy użyciu co najmniej jedną z wartości wejściowych, więc nie chcę użyć to:
group table by table.Field<string>(Column1).ToUpper() into groupedTable
Ostatnie zmiany są [nieodpowiednie] (http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be-removed-from-posts) oraz, ze względu na wiek postów, do których je stosujesz, prawdopodobnie spam. Proszę zaniechać. –