public static void Seed(FootballizeDbContext 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 UsersSeeder(), new CountriesAndCitiesSeeder(), new FieldsSeeder(), new GamesSeeder() }; foreach (var seeder in seeders) { seeder.Seed(dbContext, serviceProvider); logger.LogInformation($"Seeder {seeder.GetType().Name} done."); dbContext.SaveChanges(); } }