Ver Mensaje Individual
  #12 (permalink)  
Antiguo 10/03/2010, 15:27
rontico
 
Fecha de Ingreso: marzo-2010
Mensajes: 1
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Using List.Contains()

Lo mejor y más rápido es que implementes la interfaz IEquatable en la clase de la cual tienes la lista.

Solamente luego solamente tendrías que implementar el método "Equals"...

Ejemplo:

1. Definición de la clase:

internal class Alumno : IEquatable<Alumno>
{
int _id;
string _nombre;

public int Id
{
get { return _id; }
set { _id = value; }
}

public string Nombre
{
get { return _nombre; }
set { _nombre = value.Trim(); }
}

public Alumno(int id, string nombre)
{
this.Id = id;
this.Nombre = nombre;
}

public bool Equals(Alumno otherAlumno)
{
if (this.Id == otherAlumno.Id)
true;
else
false;
}
}

2. Utilización en una lista

List<Alumno> alumnos = new List<Alumno>();

Alumno tmpAlumno = new Alumno(1,"fulano");
alumnos.Add(tmpAlumno);

tmpAlumno = new Alumno(2,"mengano");
alumnos.Add(tmpAlumno);


if(alumnos.Contains(tmpAlumno))
//Existe!


Saludos!