EF6 Seed 차이점(?)

ν‰μ†Œ 개발 ν™˜κ²½μ„ .NetFramework4.8 κΉŒμ§€ μž‘μ—…μ„ ν•΄μ˜€κ³  μžˆμ—ˆμŠ΅λ‹ˆλ‹€.
μ—…λ°μ΄νŠΈκ°€ λŠκΈ΄κ²ƒλ„ κ·Έλ ‡κ³  머물러 있기 λͺ¨ν˜Έν•œ λ§ˆμŒμ—
.Net6.0으둜 ν™˜κ²½ λ³€κ²½ν•˜μ—¬ 처음 접해보고 μžˆλŠ”λ°μš”,

Code-Firstμœ„μ£Όλ‘œ μž‘μ—…ν–ˆμ—ˆμŠ΅λ‹ˆλ‹€.
DB Seedν• λ•Œ
.NetFramework4.8 μ—μ„œλŠ” App.config 파일이 μ†”λ£¨μ…˜ μƒμ„±μ‹œ μžλ™μœΌλ‘œ 생성 λ˜μ—ˆμ—ˆμŠ΅λ‹ˆλ‹€.
ν—Œλ° .Net6.0μ—λŠ” μ—†λ”λΌκ΅¬μš”β€¦?

μ΄λŸ¬ν•œ ConnectionString 처리λ₯Ό(?) Seed처리λ₯Ό ν•˜κΈ° μœ„ν•΄μ„œλŠ”β€¦?
.Net6.0μ—μ„œλŠ” μ–΄λ–»κ²Œ μ²˜λ¦¬ν•˜λŠ”κ±ΈκΉŒμš”??

μš°μ„  EF Core의 Data Seeding λ¬Έμ„œλ₯Ό μ‚΄νŽ΄λ³΄μ‹œκΈ° λ°”λžλ‹ˆλ‹€.

App.configλŠ” .NET 6μ—μ„œλ„ λ™μΌν•˜κ²Œ μ‚¬μš© κ°€λŠ₯ν•©λ‹ˆλ‹€.

μ•„λž˜μ˜ 링크λ₯Ό μ°Έκ³ ν•˜μ„Έμš”.

2개의 μ’‹μ•„μš”

ν˜Ήμ‹œ app.config와 같은 μ„€μ • νŒŒμΌμ„ .net core ν™˜κ²½μ—μ„œλŠ” μ–΄λ–»κ²Œ μ‚¬μš©ν•˜λŠ”μ§€λ₯Ό μ—¬μ­€ λ³΄μ‹œλŠ”κ±°λΌλ©΄
μ•„λž˜ 링크λ₯Ό μ°Έμ‘°ν•΄ λ³΄μ‹œλŠ” 것도 쒋을 것 κ°™μ•„μš”.

파일 μΆ”κ°€

appsettings.json 파일 μΆ”κ°€ + Copy to Output Directory 속성을 Copy if newer둜 λ³€κ²½

νŒ¨ν‚€μ§€ μΆ”κ°€

dotnet add package Microsoft.Extensions.Configuration
dotnet add package Microsoft.Extensions.Configuration.Json

예제

class Program
{
    static void Main(string[] args)
    {
            var builder = new ConfigurationBuilder()
            .AddJsonFile($"appsettings.json", true, true);

        var config = builder.Build();
        var connectionString = config["ConnectionString"];
        var emailHost = config["Smtp:Host"];
        Console.WriteLine($"Connection String is: {connectionString}");
        Console.WriteLine($"Email Host is: {emailHost}");
        Console.ReadLine();
    }
}

μ˜ˆμ œλŠ” 인덱슀둜 μ ‘κ·Όν–ˆλŠ”λ°μš”.
GetConnectionString 속성이 μžˆμ„κΊΌμ—μš”.

http://www.techtutorhub.com/article/how-to-read-appsettings-json-configuration-file-in-dot-net-core-console-application/83

2개의 μ’‹μ•„μš”