Exemple #1
0
        public Publisher()
        {
            var factory = new ConnectionFactory()
            {
                HostName = "localhost"
            };

            var loggerFactory = LoggerFactory.Create(builder =>
            {
                builder.AddConsole();
            });

            _messageQueue = new RabbitMessageQueue(factory, new RabbitMessageQueueOptions
            {
                Exchange = new ExchangeConfig
                {
                    Name = "Invoice"
                }
            }, logger: loggerFactory.CreateLogger <RabbitMessageQueue>());
            _context = TestContext.Create();
            _context.Database.EnsureCreated();

            var eventLogUoW = new EfUnitOfWork(_context);
            var repository  = new EfRepository <EntityEventLog, Guid>(eventLogUoW);

            _eventPublisher = new EntityEventPublisher(_messageQueue, repository, loggerFactory.CreateLogger <EntityEventPublisher>());

            _uow        = new EfUnitOfWork(_context, _eventPublisher);
            _repository = new EfRepository <Invoice, int>(_uow);
        }
Exemple #2
0
        public static List <SiteSettings> GetAllSiteSettings()
        {
            EfUnitOfWork unitofWork   = new EfUnitOfWork();
            var          siteSettings = unitofWork.SiteSettingValues.ToList();

            return(siteSettings);
        }
Exemple #3
0
 public bool Update(CategoryModel entity)
 {
     try
     {
         using (StockDbContext context = new StockDbContext())
             using (IUnitOfWork unitofwork = new EfUnitOfWork(context))
             {
                 var category = unitofwork.GetRepository <Category>().GetById(entity.CategoryId);
                 category.CategoryName = entity.CategoryName;
                 category.Description  = entity.Description;
                 unitofwork.GetRepository <Category>().Update(category);
                 int saveCount = unitofwork.SaveChanges();
                 if (saveCount == 0)
                 {
                     return(false);
                 }
                 return(true);
             }
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex);
         throw;
     }
 }
Exemple #4
0
        public void MuiltChangeTest()
        {
            var unitOfWorkObj = new EfUnitOfWork(null /*ILogger*/); //{ DbContextFactory = _dbContextFactory };

            var uoWdbContextProvider = new EfUnitOfWorkDbContextProvider(new EfUnitOfWorkManager(IoCManager, null /*ILogger*/), IoCManager, null /*ILogger*/);
            var orderRepo            = new FakeOrderRepository(uoWdbContextProvider);
            var productRepo          = new FakeProductRepository(uoWdbContextProvider);
            var userRepo             = new FakeUserRepository(uoWdbContextProvider);

            unitOfWorkObj.Begin(new UnitOfWorkOption());
            try
            {
                //orderRepo.Insert(FakeOrder.Fake());
                productRepo.InsertAsync(FakeProduct.Fake()).GetAwaiter();
                userRepo.InsertAsync(FakeUser.Fake()).GetAwaiter();
                unitOfWorkObj.CommitAsync().GetAwaiter().GetResult();
            }
            catch (Exception ex)
            {
                //Assert.F("发生异常:" + ex.Message);
            }
            finally
            {
                unitOfWorkObj.Dispose();
            }
        }
 private static UserService GetService()
 {
     IServiceLocator serviceLocator = new DummyServiceLocator();
     IUserRepository userRepository = new UserRepository(serviceLocator);
     IUnitOfWork uow = new EfUnitOfWork<SampleDataContext>(serviceLocator);
     return new UserService(uow, userRepository);
 }
Exemple #6
0
        public override string[] GetRolesForUser(string username)
        {
            EfUnitOfWork ouw       = new EfUnitOfWork();
            var          kullanici = uow.GetRepository <tbl_Kullanici>().Get(x => x.Kullanici_Adi == username);

            return(new string[] { kullanici.tbl_Rol.Rol });
        }
        public void DeleteById(Guid id)
        {
            EfUnitOfWork.ThrowIfNoContext();
            var user = GetById(id) ?? throw new ArgumentNullException($"Пользователя с {id} нет в базе");

            EfUnitOfWork.Context.Users.Remove(user);
        }
        public virtual TKey Create(TEntity entity)
        {
            var result = ObjectSet.Add(entity);

            EfUnitOfWork.Commit();
            return(result.Id);
        }
Exemple #9
0
        public void EfUnitOfWork_Should_Not_Throw_When_Set_Context()
        {
            var          context    = new Mock <NotebooksDbContext>();
            EfUnitOfWork unitOfWork = new EfUnitOfWork();

            Assert.DoesNotThrow(() => unitOfWork.setContext(context.Object));
        }
Exemple #10
0
        public void StopCronJob(CronJobType cronJobID, DateTime stopTime)
        {
            using (var _unitOfWork = new EfUnitOfWork())
            {
                Logger.Current.Informational("Request for stopping cronjob");
                var cronJobHistory = _unitOfWork.CronJobHistoryRepository.Find(ch => ch.CronJobID == cronJobID).OrderByDescending(ch => ch.StartTime).FirstOrDefault();
                //var cronJobHistory = _unitOfWork.CronJobHistoryRepository.Find(ch => ch.CronJobID == cronJobID).OrderByDescending(ch => ch.StartTime).Take(1).FirstOrDefault();
                var cronJob = _unitOfWork.CronJobsRepository.Single(cj => cj.CronJobID == cronJobID);
                cronJob.IsRunning          = false;
                cronJob.LastNotifyDateTime = stopTime;

                if (cronJobHistory != null)
                {
                    cronJobHistory.EndTime = DateTime.UtcNow;
                }
                else
                {
                    Logger.Current.Error("Start entry doesn't exists for jobid " + cronJobID);
                }

                _unitOfWork.CronJobsRepository.Edit(cronJob);
                _unitOfWork.CronJobHistoryRepository.Edit(cronJobHistory);
                _unitOfWork.Commit();
                Logger.Current.Informational("Cronjob stopped successfully");
            }
        }
        public void EagerLoadingTest()
        {
            var vehicle = new VehicleModelProxy
            {
                Plate   = "123-abc",
                TransSN = "2343678",
                OMBYear = 3000
            };

            var        uoW              = new EfUnitOfWork(new DSNY_EngineEntities());
            var        repository       = new GenericRepository <StatusTransition>(uoW);
            var        include          = new[] { "tblTransitionSpecification.tblRuleStatements.tblRuleSets.tblRules" };
            var        statusTransition = repository.GetFirst(x => x.VehicleStatusId == 3, include);
            const bool expected         = false;

            if (statusTransition == null)
            {
                Assert.Inconclusive("StatusTransition object not returned.");
            }
            else
            {
                var actual = statusTransition.IsTransitioned();
                Assert.AreEqual(expected, actual);
            }
        }
 public IEnumerable <Cyclist> Display()
 {
     using (var unitOfWork = new EfUnitOfWork(new CyclingDbContext()))
     {
         return(unitOfWork.CyclistsRepository.GetAll().ToList());
     }
 }
        protected void ButtonFillPostgre_Click(object sender, EventArgs e)
        {
            var championship = new Championship();

            championship.Name = "World Championship";

            var sponsor = new Sponsor();

            sponsor.Name = "Union Cycliste Internationale Test";

            sponsor.Championships = new List <Championship>()
            {
                championship
            };
            championship.Sponsors = new List <Sponsor>()
            {
                sponsor
            };

            using (var unitOfWork = new EfUnitOfWork(new CyclingDbContextPostgre()))
            {
                unitOfWork.ChampionshipsRepository.Add(championship);
                unitOfWork.SponsorsRepository.Add(sponsor);

                unitOfWork.Commit();
            }
        }
Exemple #14
0
        public static UsersService GetUsersService()
        {
            HotelSystemDbContext dbContext = new HotelSystemDbContext();
            IRepository <User>   users     = new EfRepository <User>(dbContext);
            IUnitOfWork          uow       = new EfUnitOfWork(dbContext);

            return(new UsersService(users, uow));
        }
        private static UserService GetService()
        {
            IServiceLocator serviceLocator = new DummyServiceLocator();
            IUserRepository userRepository = new UserRepository(serviceLocator);
            IUnitOfWork     uow            = new EfUnitOfWork <SampleDataContext>(serviceLocator);

            return(new UserService(uow, userRepository));
        }
Exemple #16
0
        public void DeleteById(Guid id)
        {
            EfUnitOfWork.ThrowIfNoContext();

            var product = GetById(id) ?? throw new ArgumentNullException($"Продукта с id: {id} нет в базе");

            EfUnitOfWork.Context.Products.Remove(product);
        }
Exemple #17
0
        public static HotelsService GetHotelsService()
        {
            HotelSystemDbContext dbContext = new HotelSystemDbContext();
            IRepository <Hotel>  hotels    = new EfRepository <Hotel>(dbContext);
            IUnitOfWork          uow       = new EfUnitOfWork(dbContext);

            return(new HotelsService(hotels, uow));
        }
Exemple #18
0
        public GameController()
        {
            IUnitOfWork _db = new EfUnitOfWork("tttDBConnection");

            loginService   = new LoginService(_db);
            gameService    = new GameService(_db);
            historyService = new HistoryService(_db);
        }
        public void GetContextTest()
        {
            ObjectContext context = new DSNY_EngineEntities();
            var           target  = new EfUnitOfWork(context);
            var           actual  = target.GetContext;

            Assert.IsTrue(actual != null, "Actual = " + actual);
        }
 public override void Dispose()
 {
     base.Dispose();
     EfUnitOfWork?.Dispose();
     EfUnitOfWork = null;
     ContextFactory?.Dispose();
     ContextFactory = null;
 }
Exemple #21
0
 public RepositoriesTests()
 {
     _connectedUnitOfWork    = new ConnectedUnitOfWork();
     _disconnectedUnitOfWork = new DisconnectedUnitOfWork();
     _dapperUnitOfWork       = new DapperUnitOfWork();
     _efUnitOfWork           = new EfUnitOfWork();
     _logFilePath            = GetLogFilePath();
     _testWarehouses         = GenerateTestWarehouses(WriteSampleSize);
 }
Exemple #22
0
        // TODO: maybe implement remove by Id not by first and last name
        public void Remove()
        {
            using (var unitOfWork = new EfUnitOfWork(new CyclingDbContext()))
            {
                unitOfWork.CyclingExtendedRepository.RemoveByFirstAndLastName(this.FirstName, this.LastName);

                unitOfWork.Commit();
            }
        }
Exemple #23
0
        public IEnumerable <TransactionsStoredItem> GetAll(Filter filter, int skip, int take)
        {
            EfUnitOfWork.ThrowIfNoContext();

            return(EfUnitOfWork.Context.Transactions
                   .Skip(skip)
                   .Take(take)
                   .OrderByDescending(p => p.DateAdded));
        }
Exemple #24
0
        public EfUnitOfWorkTests()
        {
            _inMemoryContext = new BloggingContext(new DbContextOptionsBuilder <BloggingContext>()
                                                   // We want a new InMemory database for each test
                                                   .UseInMemoryDatabase(string.Concat("UserRepositoryTests", DateTime.UtcNow.Ticks))
                                                   .Options);

            _unitOfWork = new EfUnitOfWork(_inMemoryContext);
        }
Exemple #25
0
 public void UpdateLastNotifyDateTime(CronJobType cronJobID, DateTime lastNotifyDateTime)
 {
     using (var _unitOfWork = new EfUnitOfWork())
     {
         var cronJob = _unitOfWork.CronJobsRepository.Single(cj => cj.CronJobID == cronJobID);
         cronJob.LastNotifyDateTime = lastNotifyDateTime;
         _unitOfWork.CronJobsRepository.Edit(cronJob);
         _unitOfWork.Commit();
     }
 }
Exemple #26
0
 public EmployeeModel GetById(Guid id)
 {
     using (StockDbContext context = new StockDbContext())
         using (IUnitOfWork unitOfWork = new EfUnitOfWork(context))
         {
             var           employee      = unitOfWork.GetRepository <Employee>().GetById(id);
             EmployeeModel employeeModel = StockMapper.EmployeeModelMap(employee);
             return(employeeModel);
         }
 }
Exemple #27
0
        public EFDbPersister(ITransactionUnitOfWork unitOfWork)
        {
            if (unitOfWork == null)
            {
                throw new ArgumentNullException("unitOfWork");
            }

            _unitOfWork = (EfUnitOfWork)unitOfWork;
            _dbContext  = _unitOfWork.Context;
        }
        public IEnumerable <UserStoredItem> GetAll(Filter filter, int skip, int take)
        {
            EfUnitOfWork.ThrowIfNoContext();

            //todo фильтр можно припилить на что угодно, это пример
            return(EfUnitOfWork.Context.Users
                   .Where(u => u.Name.Contains(filter.AnythingContains))
                   .Skip(skip)
                   .Take(take)
                   .OrderByDescending(u => u.Name));
        }
        public void SetDbContextProperty_WhenArgumentsAreValid()
        {
            // Arrange.
            DbContextMock dbContextMock = new DbContextMock();

            // Act.
            EfUnitOfWork<PersonDataEntityMock, int> efUnitOfWork = new EfUnitOfWork<PersonDataEntityMock, int>(dbContextMock);

            // Assert.
            Assert.AreSame(dbContextMock, efUnitOfWork.DbContext);
        }
Exemple #30
0
        public void Constructor_WhenValidParametersArePasedToId_ShouldNotBeNull()
        {
            // Arrange
            var dbContext = new Autos4SaleDbContext();

            // Act
            var efUnitOfWork = new EfUnitOfWork(dbContext);

            // Assert
            Assert.IsNotNull(efUnitOfWork);
        }
Exemple #31
0
        public static List <SiteSettings> GetSiteSettings(ICacheManager _cacheManager)
        {
            var siteSettings = _cacheManager.Get(Enums.SiteSettings_CACHE_KEY, () =>
            {
                EfUnitOfWork unitofWork = new EfUnitOfWork();
                return(unitofWork.SiteSettingValues.ToList());
            }
                                                 );

            return(siteSettings);
        }
Exemple #32
0
        public IEntityEventPublisher Create(IServiceProvider provider)
        {
            var context      = provider.GetRequiredService <TContext>();
            var messageQueue = provider.GetRequiredService <IMessageQueue>();
            var uow          = new EfUnitOfWork(context);

            return(new EntityEventPublisher(
                       messageQueue,
                       uow.CreateRepository <EntityEventLog, Guid>(),
                       provider.GetService <ILogger <EntityEventPublisher> >()));
        }
        public void SetUnitOfWorkProperty_WhenArgumentsAreValid()
        {
            // Arrange.
            DbContextMock dbContextMock = new DbContextMock();
            EfUnitOfWork<PersonDataEntityMock, int> unitOfWorkMock = new EfUnitOfWork<PersonDataEntityMock, int>(dbContextMock);

            // Act.
            EfRepositoryMock<PersonDataEntityMock, int> dataRepository = new EfRepositoryMock<PersonDataEntityMock, int>(unitOfWorkMock);

            // Assert.
            Assert.AreSame(unitOfWorkMock, ((IEfRepository<PersonDataEntityMock, int>)dataRepository).UnitOfWork);
        }
        public void RunInExpectedTime()
        {
            // Arrange.
            DbContextMock dbContextMock = new DbContextMock();
            EfUnitOfWork<PersonDataEntityMock, int> unitOfWorkMock = new EfUnitOfWork<PersonDataEntityMock, int>(dbContextMock);

            // Act & Assert.
            Ensure.ActionRunsInExpectedTime(
                () =>
                {
                    new EfRepositoryMock<PersonDataEntityMock, int>(unitOfWorkMock);
                },
                ExecutionTimeType.Fast);
        }
        private static void Main(string[] args)
        {
            Console.Write("Creating database...");
            var unitOfWork = new EfUnitOfWork();
            unitOfWork.InitializeRepository<Domain.Models.Restaurant>();
            var attendantService = new ConsoleAttendantService(unitOfWork);
            Console.Clear();
            Console.WriteLine("Hello. Welcome!");
            Console.WriteLine("Please type in your period of the day and order.");
            Console.WriteLine("If you want to get out type exit.");

            while (true)
            {
                var line = Console.ReadLine();
                if (line == "exit")
                {
                    break;
                }
                else
                {
                    Console.WriteLine(attendantService.GetOrder(line));
                }
            }
        }
 public QuestionsService()
 {
     var dbContext = new TestsDbContext();
     this.data = new EfUnitOfWork(dbContext);
 }