コード例 #1
0
        public static BrandService Return(SKAutoDbContext db)
        {
            var brandRepository = new Repository <Brand>(db);
            var brandService    = new BrandService(brandRepository);

            return(brandService);
        }
コード例 #2
0
        public async Task SeedAsync(SKAutoDbContext dbContext, IServiceProvider serviceProvider)
        {
            var roleManager = serviceProvider.GetRequiredService <RoleManager <ApplicationRole> >();

            await SeedRoleAsync(roleManager, GlobalConstants.AdministratorRoleName);
            await SeedRoleAsync(roleManager, GlobalConstants.UserRoleName);
        }
コード例 #3
0
        public async Task SeedAsync(SKAutoDbContext dbContext, IServiceProvider serviceProvider)
        {
            if (dbContext == null)
            {
                throw new ArgumentNullException(nameof(dbContext));
            }

            if (serviceProvider == null)
            {
                throw new ArgumentNullException(nameof(serviceProvider));
            }

            var logger = serviceProvider.GetService <ILoggerFactory>().CreateLogger(typeof(ApplicationDbContextSeeder));

            var seeders = new List <ISeeder>
            {
                new RolesSeeder(),
                new SettingsSeeder(),
            };

            foreach (var seeder in seeders)
            {
                await seeder.SeedAsync(dbContext, serviceProvider);

                await dbContext.SaveChangesAsync();

                logger.LogInformation($"Seeder {seeder.GetType().Name} done.");
            }
        }
コード例 #4
0
        public static ManufactoryService Return(SKAutoDbContext db)
        {
            var manyfactoryRepository = new Repository <Manufactory>(db);
            var manufactoryService    = new ManufactoryService(manyfactoryRepository);

            return(manufactoryService);
        }
コード例 #5
0
        public async Task SeedAsync(SKAutoDbContext dbContext, IServiceProvider serviceProvider)
        {
            if (dbContext.Settings.Any())
            {
                return;
            }

            await dbContext.Settings.AddAsync(new Setting { Name = "Setting1", Value = "value1" });
        }
コード例 #6
0
ファイル: GetCategoryService.cs プロジェクト: kiovchev/SKAuto
        public static CategoryService Return(SKAutoDbContext db)
        {
            var modelRepository   = new Repository <Model>(db);
            var modelCategoryRepo = new Repository <ModelCategories>(db);
            var categoryRepo      = new Repository <Category>(db);
            var categoryService   = new CategoryService(categoryRepo, modelRepository, modelCategoryRepo);

            return(categoryService);
        }
コード例 #7
0
        public static ModelService Return(SKAutoDbContext db, BrandService brandService)
        {
            var modelRepository         = new Repository <Model>(db);
            var categoryRepository      = new Repository <Category>(db);
            var modelCategoryRepository = new Repository <ModelCategories>(db);
            var caretegoryService       = new CategoryService(categoryRepository, modelRepository, modelCategoryRepository);
            var modelService            = new ModelService(modelRepository, brandService, caretegoryService, modelCategoryRepository);

            return(modelService);
        }
コード例 #8
0
        public static SKAutoDbContext GetDb()
        {
            var options = new DbContextOptionsBuilder <SKAutoDbContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString())
                          .Options;

            var db = new SKAutoDbContext(options);

            return(db);
        }
コード例 #9
0
        private OrderService Return(SKAutoDbContext db)
        {
            var ordersRepository      = new Repository <Order>(db);
            var recipientRepository   = new Repository <Recipient>(db);
            var orderStatusRepository = new Repository <OrderStatus>(db);
            var itemService           = GetItemService.Return(db);
            var orderStatusService    = new OrderStatusService(orderStatusRepository);
            var orderService          = new OrderService(ordersRepository, recipientRepository, itemService, orderStatusService);

            return(orderService);
        }
コード例 #10
0
        public static PartService Return(SKAutoDbContext db,
                                         BrandService brandService,
                                         ModelService modelService,
                                         CategoryService categoryService,
                                         ManufactoryService manufactoryService)
        {
            var partRepository = new Repository <Part>(db);
            var partService    = new PartService(partRepository, brandService, modelService, categoryService, manufactoryService);

            return(partService);
        }
コード例 #11
0
ファイル: GetItemService.cs プロジェクト: kiovchev/SKAuto
        public static ItemService Return(SKAutoDbContext db)
        {
            var brandService       = GetBrandService.Return(db);
            var modelService       = GetModelService.Return(db, brandService);
            var categoryService    = GetCategoryService.Return(db);
            var manufactoryService = GetManufactoryService.Return(db);
            var partService        = GetPartService.Return(db, brandService,
                                                           modelService,
                                                           categoryService, manufactoryService);
            var itemRepository = new Repository <Item>(db);

            var itemService = new ItemService(partService, itemRepository);

            return(itemService);
        }
コード例 #12
0
ファイル: PartServiceTests.cs プロジェクト: kiovchev/SKAuto
        private static async Task <PartService> ReturnPartService(SKAutoDbContext db)
        {
            var brandService       = GetBrandService.Return(db);
            var modelService       = GetModelService.Return(db, brandService);
            var categoryService    = GetCategoryService.Return(db);
            var manufactoryService = GetManufactoryService.Return(db);
            var partService        = GetPartService.Return(db, brandService,
                                                           modelService,
                                                           categoryService, manufactoryService);

            await brandService.CreateBrand(new BrandCreateDtoModel
            {
                Name         = "Audi",
                ImageAddress = "/Images/CarLogos/Audi-logo.png"
            });

            await modelService.CreateModel(new ModelCreateDtoModel
            {
                BrandName    = "Audi",
                Name         = "A6",
                StartYear    = 1994,
                EndYear      = 1998,
                ImageAddress = "/Images/AUDI/AUDI A6 1994-1998-.jpg"
            });


            await categoryService.CreateCategoryAsync(new CategoryCreateDtoModel
            {
                CategoryName = "Едрогабаритни части",
                ImageAddress = ""
            });

            await manufactoryService.CreateManufactoryAsync("Kaih");

            await partService.CreatePartAsync(new PartCreateInputDtoModel
            {
                PartName        = "Калник",
                CategoryName    = "Едрогабаритни части",
                ManufactoryName = "Kaih",
                ModelName       = "Audi A6 1994-1998",
                Price           = 10,
                Quantity        = 1
            });

            return(partService);
        }
コード例 #13
0
        public async Task GetCountShouldReturnCorrectNumberUsingDbContext()
        {
            var options = new DbContextOptionsBuilder <SKAutoDbContext>()
                          .UseInMemoryDatabase(databaseName: "Find_User_Database") // Give a Unique name to the DB
                          .Options;
            var dbContext = new SKAutoDbContext(options);

            dbContext.Settings.Add(new Setting());
            dbContext.Settings.Add(new Setting());
            dbContext.Settings.Add(new Setting());
            await dbContext.SaveChangesAsync();

            var repository = new EfDeletableEntityRepository <Setting>(dbContext);
            var service    = new SettingsService(repository);
            var count      = service.GetCount();

            Assert.Equal(3, count);
        }
コード例 #14
0
ファイル: Repository.cs プロジェクト: kiovchev/SKAuto
 public Repository(SKAutoDbContext context)
 {
     this.context = context;
     table        = context.Set <T>();
 }
コード例 #15
0
 public EfDeletableEntityRepository(SKAutoDbContext context)
     : base(context)
 {
 }
コード例 #16
0
ファイル: EfRepository.cs プロジェクト: kiovchev/SKAuto
 public EfRepository(SKAutoDbContext context)
 {
     this.Context = context ?? throw new ArgumentNullException(nameof(context));
     this.DbSet   = this.Context.Set <TEntity>();
 }