.NET 6 อ่านไฟล์ appsettings.json

  1. ติดตั้ง Package ผ่าน NuGet
  2. สร้างไฟล์ appsettings.json
  3. ทดสอบอ่านไฟล์คอนฟิก

1.ติดตั้ง Package ผ่าน NuGet

PM> Install-Package Microsoft.Extensions.Configuration -Version 6.0.0
PM> Install-Package Microsoft.Extensions.Configuration.Json -Version 6.0.0

2.สร้างไฟล์ appsettings.json

{
  "DbConfig": {
    "ServerName": "localhost",
    "DatabaseName": "myDatabase",
    "UserName": "myUsername",
    "Password": "myPassword"
  }
}

และที่ “Copy to Output Directory” ให้เลือกเป็น “Copy if newer

3.ทดสอบอ่านไฟล์คอนฟิก

Program.cs

using Microsoft.Extensions.Configuration;
using System.Reflection;
using System.Xml;

namespace ConsoleApp1;
class Program
{
    public static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof(Program));

    static void Main()
    {
        XmlDocument log4netConfig = new XmlDocument();
        log4netConfig.Load(File.OpenRead("log4net.config"));
        var repo = log4net.LogManager.CreateRepository(Assembly.GetEntryAssembly(),
                   typeof(log4net.Repository.Hierarchy.Hierarchy));
        log4net.Config.XmlConfigurator.Configure(repo, log4netConfig["log4net"]);
        log.Info("Hello World!");

        var builder = new ConfigurationBuilder()
            .SetBasePath(Directory.GetCurrentDirectory())
            .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);
        IConfiguration iconfiguration = builder.Build();
        string _server = iconfiguration.GetValue<string>("DbConfig:ServerName");
        log.Info(_server);
    }
}