De sus comentarios concluyo que usted ha leído el nombre del estudiante de la entrada y necesita eliminar al estudiante con el nombre dado.
class Student {
public string Name { get; set; }
public int Number { get; set; }
public Student (string name, int number)
{
Name = name;
Number = number;
}
}
var students = new List<Student> {
new Student ("Daniel", 10),
new Student ("Mike", 20),
new Student ("Ashley", 42)
};
var nameToRemove = Console.ReadLine();
students.RemoveAll (s => s.Name == nameToRemove); // remove by condition
Tenga en cuenta que esto eliminará a todos los estudiantes con nombre de pila.
Si necesita quitar el primer estudiante que se encuentre por su nombre, utilice primero First
método para encontrarlo, y luego llamar a Remove
para la instancia:
var firstMatch = students.First (s => s.Name == nameToRemove);
students.Remove (firstMatch);
Si desea asegurarse de que no sólo es uno estudiante con nombre que se da antes de extraer de él, utilizar Single
de una manera similar:
var onlyMatch = students.Single (s => s.Name == nameToRemove);
students.Remove (onlyMatch);
Tenga en cuenta que Single
llamada falla si no hay exactamente un elemento que coincida con el predicado.
Esto está completamente fuera de tema, pero también considera buscar propiedades implementadas automáticamente. http://msdn.microsoft.com/en-us/library/bb384054.aspx – inspite