public ApplicationContext(IRepository <ICommit> commitsRepo, IRepository <IStaff> employeeRepo, IRepository <DailyReport> dailyReportRepo, IRepository <SprintReport> sprintReportRepo, IRepository <DirectorReport> teamLeaderReportRepo, FutuTime time, TaskRepository tasksRepo) { this.Time = time; this.CommitsRepository = commitsRepo; this.EmployeeRepository = employeeRepo; this.TasksRepository = tasksRepo; this.DailyReportRepository = dailyReportRepo; this.SprintReportRepository = sprintReportRepo; this.DirectorReportRepository = teamLeaderReportRepo; }
static void Main(string[] args) { var timer = new FutuTime(); var commitRepo = new CommitRepository(); var employeeRepo = new StaffRepository(); var tasksRepo = new TaskRepository(); var dailyReportRepo = new DailyReportRepository(); var sprintRepo = new SprintReportRepository(); var teamLeaderRepo = new DirectorReportRepository(); var database = new UnitOfWork(new ApplicationContext(commitRepo, employeeRepo, dailyReportRepo, sprintRepo, teamLeaderRepo, timer, tasksRepo)); var commitServ = new CommitManageService(database); var employeeServ = new StaffManageService(database); var reportServ = new ReportManageService(database); var tasksServ = new TaskManageService(database); var timerServ = new ManageTimeService(database); var HomeConntroller = new HomeController(new ApplicationContextSer(commitServ, employeeServ, reportServ, tasksServ, timerServ)); HomeConntroller.AddNewStaff("Rifat"); HomeConntroller.AddNewStaff("Tema"); HomeConntroller.AddNewStaff("Artur"); }