From d2696cab01bea5fba0c00b907343e8052adacd74 Mon Sep 17 00:00:00 2001 From: crupest Date: Sat, 23 Jan 2021 01:16:24 +0800 Subject: feat: Now configuration uses environment variables starts with 'Timeline_'. And remove work dir config in launch profiles. --- BackEnd/Timeline/Program.cs | 51 +++++++++++++++++++++++++-------------------- 1 file changed, 28 insertions(+), 23 deletions(-) (limited to 'BackEnd/Timeline/Program.cs') diff --git a/BackEnd/Timeline/Program.cs b/BackEnd/Timeline/Program.cs index 87e330a2..1f0f72b9 100644 --- a/BackEnd/Timeline/Program.cs +++ b/BackEnd/Timeline/Program.cs @@ -1,5 +1,6 @@ using Microsoft.AspNetCore.Hosting; using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using System.Resources; @@ -10,34 +11,38 @@ using Timeline.Services; namespace Timeline { - public static class Program + public static class Program + { + public static void Main(string[] args) { - public static void Main(string[] args) - { - var host = CreateWebHostBuilder(args).Build(); - - var env = host.Services.GetRequiredService(); + var host = CreateWebHostBuilder(args).Build(); - var databaseBackupService = host.Services.GetRequiredService(); - databaseBackupService.BackupNow(); + var env = host.Services.GetRequiredService(); - if (env.IsProduction()) - { - using (var scope = host.Services.CreateScope()) - { - var databaseContext = scope.ServiceProvider.GetRequiredService(); - databaseContext.Database.Migrate(); - } - } + var databaseBackupService = host.Services.GetRequiredService(); + databaseBackupService.BackupNow(); - host.Run(); + if (env.IsProduction()) + { + using (var scope = host.Services.CreateScope()) + { + var databaseContext = scope.ServiceProvider.GetRequiredService(); + databaseContext.Database.Migrate(); } + } - public static IHostBuilder CreateWebHostBuilder(string[] args) => - Host.CreateDefaultBuilder(args) - .ConfigureWebHostDefaults(webBuilder => - { - webBuilder.UseStartup(); - }); + host.Run(); } + + public static IHostBuilder CreateWebHostBuilder(string[] args) => + Host.CreateDefaultBuilder(args) + .ConfigureAppConfiguration(config => + { + config.AddEnvironmentVariables("Timeline_"); + }) + .ConfigureWebHostDefaults(webBuilder => + { + webBuilder.UseStartup(); + }); + } } -- cgit v1.2.3