public static IHost Seed(this IHost host) { using var scope = host.Services.CreateScope(); var serviceProvider = scope.ServiceProvider; try { Task.Run(async() => { var dataseed = new DataInitialiser(); await dataseed.InitialiseData(serviceProvider); }).Wait(); } catch (Exception e) { var logger = serviceProvider.GetRequiredService <ILogger <Program> >(); logger.LogError(e, "An error occurred seeding the DB."); throw; } return(host); }
public static void Main(string[] args) { var host = CreateWebHostBuilder(args).Build(); using (var scope = host.Services.CreateScope()) { var services = scope.ServiceProvider; try { var context = services.GetRequiredService <UniversityContext>(); DataInitialiser.Intialise(context); } catch (Exception ex) { var logger = services.GetRequiredService <ILogger <Program> >(); logger.LogError(ex, "An error occurred creating the DB."); } } host.Run(); }