Skip to content

Commit 53a9aa7

Browse files
author
Сергей Трегуб
committed
Load .env before Serilog initialization
It makes possible to use variables from .env in Serilog configuration. Issue #7
1 parent 68131cb commit 53a9aa7

2 files changed

Lines changed: 9 additions & 8 deletions

File tree

ProjectTemplates/ReferenceProject/Program.cs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using Microsoft.Extensions.Configuration;
66
using Serilog;
77
using Microsoft.Extensions.Hosting;
8+
using System.IO;
89

910
namespace ReferenceProject
1011
{
@@ -18,6 +19,14 @@ public static void Main(string[] args)
1819
public static IHostBuilder CreateHostBuilder(string[] args) =>
1920
Host.CreateDefaultBuilder(args)
2021
.UseServiceProviderFactory(new AutofacServiceProviderFactory())
22+
.ConfigureAppConfiguration((hostingContext, config) =>
23+
{
24+
// https://github.com/drwatson1/AspNet-Core-REST-Service/wiki#using-environment-variables-in-configuration-options
25+
var envPath = Path.Combine(hostingContext.HostingEnvironment.ContentRootPath, ".env");
26+
DotNetEnv.Env.Load(envPath);
27+
28+
config.AddEnvironmentVariables();
29+
})
2130
.ConfigureLogging((context, logging) =>
2231
{
2332
logging.ClearProviders();
@@ -34,10 +43,6 @@ public static IHostBuilder CreateHostBuilder(string[] args) =>
3443
.ReadFrom.Configuration(context.Configuration)
3544
.CreateLogger());
3645
})
37-
.ConfigureAppConfiguration(x =>
38-
{
39-
x.AddEnvironmentVariables();
40-
})
4146
.ConfigureWebHostDefaults(webBuilder =>
4247
{
4348
webBuilder.UseStartup<Startup>();

ProjectTemplates/ReferenceProject/Startup.cs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,6 @@ public Startup(IConfiguration configuration, IHostEnvironment env)
3737
{
3838
Startup.Configuration = configuration;
3939

40-
// https://github.com/drwatson1/AspNet-Core-REST-Service/wiki#using-environment-variables-in-configuration-options
41-
var envPath = Path.Combine(env.ContentRootPath, ".env");
42-
DotNetEnv.Env.Load(envPath);
43-
4440
// See: https://github.com/drwatson1/AspNet-Core-REST-Service/wiki#content-formatting
4541
JsonConvert.DefaultSettings = () =>
4642
{

0 commit comments

Comments
 (0)