[C#/ASP.NET MVC/.NETCORE] IHostBuilder 인터페이스 : ConfigureAppConfiguration 메소드에서 appsettings.json 파일 설정 값 구하기
C#/ASP.NET MVC 2020. 10. 27. 18:02728x90
반응형
728x170
▶ appsettings.json
{
"Logging" :
{
"LogLevel" :
{
"Default" : "Information",
"Microsoft" : "Warning",
"Microsoft.Hosting.Lifetime" : "Information"
}
},
"AllowedHosts" : "*",
"ConnectionStrings" :
{
"DefaultConnection" : "Data Source=(localdb)\\MSSQLLocalDB;Initial Catalog=TestDB;Integrated Security=True;"
}
}
728x90
▶ Program.cs
using Microsoft.AspNetCore.Hosting;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Hosting;
namespace TestProject
{
/// <summary>
/// 프로그램
/// </summary>
public class Program
{
//////////////////////////////////////////////////////////////////////////////////////////////////// Method
////////////////////////////////////////////////////////////////////////////////////////// Static
//////////////////////////////////////////////////////////////////////////////// Public
#region 프로그램 시작하기 - Main(argumentArray)
/// <summary>
/// 프로그램 시작하기
/// </summary>
/// <param name="argumentArray">인자 배열</param>
public static void Main(string[] argumentArray)
{
CreateHostBuilder(argumentArray).Build().Run();
}
#endregion
#region 호스트 빌더 생성하기 - CreateHostBuilder(argumentArray)
/// <summary>
/// 호스트 빌더 생성하기
/// </summary>
/// <param name="argumentArray">인자 배열</param>
/// <returns>호스트 빌더</returns>
public static IHostBuilder CreateHostBuilder(string[] argumentArray) =>
Host.CreateDefaultBuilder(argumentArray)
.ConfigureAppConfiguration
(
(context, builder) =>
{
var root = builder.AddJsonFile("appsettings.json", optional : true, reloadOnChange : true).Build();
string connectionString = root.GetConnectionString("DefaultConnection");
builder.AddEFConfiguration(options => options.UseSqlServer(connectionString));
}
)
.ConfigureWebHostDefaults
(
builder =>
{
builder.UseStartup<Startup>();
}
);
#endregion
}
}
728x90
반응형
그리드형(광고전용)
댓글을 달아 주세요