private static EmployeeProjectsFacade GetFacade(DbContextOptions <EmployeeProjectDbContext> options) { var dateTimeProvider = new LocalDateTimeProvider(); IUnitOfWorkProvider unitOfWorkProvider = new EntityFrameworkUnitOfWorkProvider(new AsyncLocalUnitOfWorkRegistry(), () => new EmployeeProjectDbContext(options)); Func <IFilteredQuery <EmployeeProjectDTO, EmployeeProjectFilterDTO> > queryFactory = () => new Mock <IFilteredQuery <EmployeeProjectDTO, EmployeeProjectFilterDTO> >().Object; var mapper = CreateMapper(); var entityMapper = new EntityDTOMapper <EmployeeProject, EmployeeProjectDTO>(mapper); var respository = new EntityFrameworkRepository <EmployeeProject, int>(unitOfWorkProvider, dateTimeProvider); var parentRepository = new EntityFrameworkRepository <Employee, int>(unitOfWorkProvider, dateTimeProvider); var facade = new EmployeeProjectsFacade(queryFactory, entityMapper, respository, parentRepository, dateTimeProvider, unitOfWorkProvider); return(facade); }
public RepositoryBase() { var config = EntityDTOMapper.Configure(); this.Mapper = config.CreateMapper(); }