Вопрос о дизайне приложения C#
привет
Я разрабатываю новое приложение для оплаты труда сотрудников, которое требует добавления нескольких типов сотрудников в будущем, и я не уверен, что мой подход является правильным.
Что я уже пробовал:
public interface IEmployee { string Name { get; set; } decimal CalculateSalary(DateTime from,DateTime to,List<Vacation> vacations); }
а побуждение к работе с базой данных sql происходит следующим образом
public class Emp1 : IEmployee { public int Id { get; set; } public string Name { get; set; } public readonly int emptype = 1; } public class Emp2 : IEmployee { public int Id { get; set; } public string Name { get; set; } public readonly int emptype = 2; } public class Vacation { public int Id { get; set; } public int EmpId { get; set; } public int EmpType { get; set; } public DateTime Date { get; set; } public string Reason { get; set; } }
Я пошел на такое внедрение, потому что каждый сотрудник очень отличается от других, но отпуск для них всех одинаков.
есть ли лучший подход?
Я также сбит с толку Как я должен проверять имя сотрудника никто не повторяется