W mojej bazie danych mam kilka dzwonków o tym samym numerze. Chcę je wszystkie zdobyć bez powielania. Stworzyłem klasę porównawczą, aby wykonać tę pracę, ale wykonanie funkcji powoduje duże opóźnienie funkcji bez wyraźnego, od 0,6 s do 3,2 s!
Czy robię to dobrze, czy muszę użyć innej metody?
reg.AddRange(
(from a in this.dataContext.reglements
join b in this.dataContext.Clients on a.Id_client equals b.Id
where a.date_v <= datefin && a.date_v >= datedeb
where a.Id_client == b.Id
orderby a.date_v descending
select new Class_reglement
{
nom = b.Nom,
code = b.code,
Numf = a.Numf,
})
.AsEnumerable()
.Distinct(new Compare())
.ToList());
class Compare : IEqualityComparer<Class_reglement>
{
public bool Equals(Class_reglement x, Class_reglement y)
{
if (x.Numf == y.Numf)
{
return true;
}
else { return false; }
}
public int GetHashCode(Class_reglement codeh)
{
return 0;
}
}