52 lines
1.6 KiB
C#
52 lines
1.6 KiB
C#
using System;
|
|
using Microsoft.AspNetCore.Hosting;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.Hosting;
|
|
using Microsoft.Extensions.Logging;
|
|
using Sledgemapper.Api.Infrastructure.Data;
|
|
|
|
namespace Sledgemapper.Api
|
|
{
|
|
public class Program
|
|
{
|
|
public static void Main(string[] args)
|
|
{
|
|
var host= CreateHostBuilder(args).Build();
|
|
CreateDbIfNotExists(host);
|
|
host.Run();
|
|
}
|
|
|
|
public static IHostBuilder CreateHostBuilder(string[] args) =>
|
|
Host.CreateDefaultBuilder(args)
|
|
.ConfigureWebHostDefaults(webBuilder =>
|
|
{
|
|
webBuilder.UseStartup<Startup>();
|
|
});
|
|
|
|
// public static IHostBuilder CreateHostBuilder(string[] args) =>
|
|
// Host.CreateDefaultBuilder(args)
|
|
// .ConfigureWebHostDefaults(webBuilder =>
|
|
// {
|
|
// webBuilder.UseStartup<Startup>();
|
|
// });
|
|
|
|
private static void CreateDbIfNotExists(IHost host)
|
|
{
|
|
using (var scope = host.Services.CreateScope())
|
|
{
|
|
var services = scope.ServiceProvider;
|
|
try
|
|
{
|
|
var context = services.GetRequiredService<SledgemapperDbContext>();
|
|
// DbInitializer.Initialize(context);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
var logger = services.GetRequiredService<ILogger<Program>>();
|
|
logger.LogError(ex, "An error occurred creating the DB.");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|