.net 5.0 - 控制台加载appsettings.json文件

 引用NuGet

 Microsoft.Extensions.Configuration

 Microsoft.Extensions.Configuration.FileExtensions

 Microsoft.Extensions.Configuration.Json

 在控制台应用项目下,创建appsettings.json
{
  "ConnectionStrings": {
    "dbName": "server=localhost;database=hr;PORT=3306;uid=root;pwd=123456;charset=gb2312"
  },
  "AppSettings": {
    "Url": "12"
  }
}

 特别注意:

创建调用类及调用方式

 

using Microsoft.Extensions.Configuration;
using System;
using System.IO;

namespace CustomAttributes.Model
{
    public class Appsettings
    {
        private IConfigurationRoot Configuration;

        private Appsettings()
        {
            var builder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json");
            Configuration = builder.Build();
        }

        private static readonly Lazy<Appsettings> InstanceLock = new Lazy<Appsettings>(() => new Appsettings()
        {

        });

        public static Appsettings Instance
        {
            get
            {
                return InstanceLock.Value;
            }
        }

        public string GetByKey(string key)
        {
            return Configuration.GetSection(key).Value;
        }

        public string GetConnectionString()
        {
            return Configuration.GetConnectionString("dbName");
        }
    }
}

  

using CustomAttributes.Model;
using System;

namespace CustomAttributesApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(Appsettings.Instance.GetByKey("AppSettings:Url"));
            Console.WriteLine(Appsettings.Instance.GetConnectionString());
        }
    }
}

  

 

posted @ 2021-05-12 23:02  gygtech  Views(1017)  Comments(0Edit  收藏  举报