728x90
반응형
1. ConnectionStrings를 appsettings.Development.json에서 관리하는 경우
appsettings.Development.json
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"ConnectionStrings": {
"DefaultConnection": "Server=localhost,1433;database=CommandDb;uid=sa;pwd=;"
}
}
Program.cs
var builder = WebApplication.CreateBuilder(new WebApplicationOptions
{
EnvironmentName = Environments.Development
});
builder.Services.AddDbContext<AppDbContext>(opt => opt.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection")));
var app = builder.Build();
app.Run();
2. ConnectionStrings의 계정정보를 secrets.json에서 관리하는 경우
appsettings.Development.json
계정정보 없이 아래와 같이 세팅한다.
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"ConnectionStrings": {
"DefaultConnection": "Server=localhost,1433;Initial Catalog=CommandDb"
}
}
secrets.json 파일을 생성하고, 계정정보를 세팅한다.
PS C:\Users\admin\source\repos\SixMinAPI> dotnet user-secrets init
Set UserSecretsId to '7a9015d1-021b-412e-8c37-cc7574c1d25b' for MSBuild project 'C:\Users\admin\source\repos\SixMinAPI\SixMinAPI.csproj'.
PS C:\Users\admin\source\repos\SixMinAPI> dotnet user-secrets set "UserId" "sa"
Successfully saved UserId = sa to the secret store.
PS C:\Users\admin\source\repos\SixMinAPI> dotnet user-secrets set "Password" "12345"
Successfully saved Password = 12345 to the secret store.
.csproj 파일에 UserSecretsId Property가 자동 추가된다.
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UserSecretsId>7a9015d1-021b-412e-8c37-cc7574c1d25b</UserSecretsId>
</PropertyGroup>
secrets.json 파일을 아래 경로에서 확인 가능하다.
%APPDATA%\Microsoft\UserSecrets\<user_secrets_id>\secrets.json
secrets.json
{
"UserID": "sa",
"Password": "12345"
}
Program.cs
secrets.json에 저장된 계정정보를 가져와서 sql server와 연결처리 한다.
var builder = WebApplication.CreateBuilder(new WebApplicationOptions
{
EnvironmentName = Environments.Development
});
var sqlConBuilder = new SqlConnectionStringBuilder();
sqlConBuilder.ConnectionString = builder.Configuration.GetConnectionString("DefaultConnection");
sqlConBuilder.UserID = builder.Configuration["UserID"];
sqlConBuilder.Password = builder.Configuration["Password"];
builder.Services.AddDbContext<AppDbContext>(opt => opt.UseSqlServer(sqlConBuilder.ConnectionString));
var app = builder.Build();
app.Run();
728x90
반응형
'ASP.NET Core' 카테고리의 다른 글
.NET CLI] 사용법 - 설명, SDK 설치확인, SDK 다운로드 (1) (0) | 2022.06.23 |
---|---|
.NET] .NET Framework, .NET Core, .NET Standard 정리 (0) | 2022.06.23 |
.NET 6] Minimal APIs VS MVC APIs 차이점 (0) | 2022.06.15 |
.NET 6] SignalR Server, SignalR Client App (0) | 2022.06.09 |
.NET Core] Request Pipeline - Run, Map, Use (0) | 2022.05.23 |
댓글