Domanda

Come fare implementazione per IEqualityComparer per questa classe?

La proprietà ID non è unica. Né proprietà ha valori univoci.

L'entità ha 7 immobili.

[Serializable()]
public class ServidorSeleccionadoDto
{
    [XmlAttribute()]
    public int Id { get; set; }

    [XmlAttribute()]
    public string Nombre { get; set; }

    [XmlAttribute()]
    public string IP { get; set; }

    [XmlAttribute()]
    public string Entorno { get; set; }

    [XmlAttribute()] // [XmlIgnore()]
    public string Habilitado { get; set; }

    [XmlAttribute()]
    public string Tipo { get; set; }

    [XmlAttribute()]
    public int IdGrupo { get; set; }
}
È stato utile?

Soluzione

Sembra che l'oggetto ha un campo ID. Se questo è unico per ogni oggetto allora si avrebbe solo bisogno di confrontare su quella proprietà.

public Boolean Equals(ServidorSeleccionadoDto obj)
{
   return this.ID == obj.ID;
}

. Nota: questa sarebbe solo lavoro se ID è unico


Se la proprietà ID non riguardano solo si dovrà confrontare le proprietà tutti gli oggetti.

public Boolean Equals(ServidorSeleccionadoDto obj)
{
    return this.ID == obj.ID && 
           this.Nombre.Equals(obj.Nombre) && 
           ... etc
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top