Вы необходимо реализовать интерфейс IEqualityComparer<DataRow>
, чтобы обеспечить способ, которым метод Distinct
будет использовать, чтобы знать, дублируются ли две строки или нет. Это может быть достигнуто с классом, как это:
public class CustomComparer : IEqualityComparer<DataRow>
{
public bool Equals(DataRow x, DataRow y)
{
// your custom equality logic here
}
public int GetHashCode(DataRow obj)
{
// return hash code depending on your distinct criteria
}
}
Затем измените вызов вы сделали:
int toto = bdtable.AsEnumerable().Distinct(new CustomComparer()).Count();
У меня была аналогичная проблема, и в моем случае, мне нужно знать различные значения определенного столбца, поэтому я передал имя этого столбца на пользовательский сопоставитель, который я реализовал, так что GetHashCode
вернет идентичные хэш-коды для повторяющихся значений.
Вы можете прочитать здесь: https://msdn.microsoft.com/en-us/library/ms132151(v=vs.110).aspx
Надеется, что это помогает :)
попробовать использовать запрос: SELECT DISTINCT столбца из clubbb –