Если я создал следующий Employee объект (упрощенный)...
public class Employee
{
public Employee()
{
}
public String StaffID { get; set; }
public String Forename { get; set; }
public String Surname { get; set; }
}
... было бы приемлемо иметь другое свойство в объекте Сотрудник с типом, также являющимся Сотрудником, чтобы хранить данные своего Менеджера (как показано ниже)?
public class Employee
{
public Employee()
{
}
public String StaffID { get; set; }
public String Forename { get; set; }
public String Surname { get; set; }
public Employee Manager { get; set; }
}
Также, как лучше всего создать экземпляр объекта Сотрудник для свойства Менеджер? Очевидно, что включение this.Manager = new Employee();
в конструкторе вызовет бесконечный цикл. Лучше ли будет Менеджер класс, который наследует от Employee (хотя все свойства будут одинаковыми)?