.net core 3.1 获取配置文件


项目下载地址 .net core 3.1 获取配置文件

项目如下

项目名输出类型框架说明
ConfigExtends类库.net core 3.1获取配置文件的扩展
Study.Factory.Reflect控制台应用程序.net core 3.1使用获取配置文件

.net core 3.1 获取配置文件

ConfigExtends

IConfigHandle

using System;
using System.Text;
using System.Collections.Generic;

namespace ConfigExtends
{
    interface IConfigHandle
    {
         string GetConfig(string key);
    }
}

ConfigService

using System;
using System.Text;
using System.Collections.Generic;
using Microsoft.Extensions.Configuration;

namespace ConfigExtends
{
    public class ConfigHandle : IConfigHandle
    {
        private  readonly IConfiguration _configuration;
        public ConfigHandle(IConfiguration configuration) => _configuration = configuration;
        public string GetConfig(string key)
        {
            return _configuration.GetSection(key).Value;
        }
    }
}

ConfigHandle

using System;
using System.Text;
using System.Collections.Generic;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;

namespace ConfigExtends
{
    public class ConfigService
    {
        public static IHostBuilder _HostBuilder
        {
            get
            {
                var builder = new HostBuilder()
                    .ConfigureAppConfiguration((hostcontext, configApp) =>
                    {
                        //指定需要读取的文件,文件属性记得设置为始终复制
                        configApp.AddJsonFile("appsettings.json");
                    })
                    .ConfigureServices((hostcontext, services) =>
                    {
                        services.AddTransient<IConfigHandle, ConfigHandle>();
                    })
                    .UseConsoleLifetime();
                return builder;
            }
        }

        public static string GetConfig(string key)
        {
            var builder = _HostBuilder.Build();
            using var serviceScope = builder.Services.CreateScope();
            var config = serviceScope.ServiceProvider.GetService<IConfigHandle>();
            return config.GetConfig(key);
        }

    }
}

Study.Factory.Reflect

appsettings.json

{
  "exclude": [
    "**/bin",
    "**/bower_components",
    "**/jspm_packages",
    "**/node_modules",
    "**/obj",
    "**/platforms"
  ],
  "ConnectionStrings": {
    "defulat": "server=.;database=Reflect;uid=sa;pwd=1"
  }
}

Program.cs

 Console.WriteLine(ConfigService.GetConfig("ConnectionStrings:defulat"));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Izrj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值