public async Task SeedAsync(MNoteDbContext 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."); } }
public async Task SeedAsync(MNoteDbContext dbContext, IServiceProvider serviceProvider) { if (dbContext.Settings.Any()) { return; } await dbContext.Settings.AddAsync(new Setting { Name = "Setting1", Value = "value1" }); }
public async Task GetCountShouldReturnCorrectNumberUsingDbContext() { var options = new DbContextOptionsBuilder <MNoteDbContext>() .UseInMemoryDatabase(databaseName: "SettingsTestDb").Options; var dbContext = new MNoteDbContext(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); Assert.Equal(3, service.GetCount()); }
public UsersService(UserManager <ApplicationUser> userManager, MNoteDbContext db) { this.userManager = userManager; this.db = db; }
public NotebooksService(MNoteDbContext db, IUsersService usersService) { this.db = db; this.usersService = usersService; }
public EfRepository(MNoteDbContext context) { this.Context = context ?? throw new ArgumentNullException(nameof(context)); this.DbSet = this.Context.Set <TEntity>(); }
public EfDeletableEntityRepository(MNoteDbContext context) : base(context) { }
public async Task SeedAsync(MNoteDbContext dbContext, IServiceProvider serviceProvider) { var roleManager = serviceProvider.GetRequiredService <RoleManager <ApplicationRole> >(); await SeedRoleAsync(roleManager, GlobalConstants.AdministratorRoleName); }