Поскольку вы не предоставили никакой информации о своем классе ученика, я придумал кое-что самостоятельно.Возможное решение может выглядеть следующим образом:
class Management {
List<Student> Students {get;set;}
List<Teacher> Teachers {get; set;}
public bool AddStudent (Student student){
try
{
this.Students.Add(student);
return true;
}
catch
{
return false;
}
}
}
abstract class Employee
{
public string Name { get; set; }
public string Class { get; set; }
}
class Student : Employee
{
static List<Teacher> Teachers { get; set; }
public static bool AddTeacher(Teacher teacher)
{
try
{
Teachers.Add(teacher);
return true;
}
catch
{
return false;
}
}
}
Содержит список для всех студентов и преподавателей.
В коммутаторе вы просто добавляете
case "1":
{
Console.WriteLine("Adding new student.");
Console.WriteLine("Enter new student name: ");
string name = Console.ReadLine();
management.AddStudent(new Student(){Name = name});
Console.ReadKey();
break;
}
чтобы позже найти объект учащегося, вы можете использовать linq, например
management.Students.Where(X => X.Name == "Max Mustermann");
Использование класса Management позволяет удерживать всех ваших учеников, и вы можете добавлять вспомогательные методы кнапример, перечислите всех студентов и т. д.
Я надеюсь, что этот подход поможет вам и не слишком перегружен.