Tengo algunas campanas en mi base de datos con el mismo número. Quiero obtenerlos todos sin duplicarlos. Creé una clase de comparación para hacer este trabajo, pero la ejecución de la función provoca un gran retraso de la función sin distinción, ¡de 0,6 segundos a 3,2 segundos!
¿Lo estoy haciendo bien o tengo que usar otro método?
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;
}
}