577
社区成员




1)定义一个配置类,并且设置一个静态的初始化方法,接收参数为配置接口
2)配置接口,dotnet\packs\Microsoft.AspNetCore.App.Ref\3.1.10\ref\netcoreapp3.1\Microsoft.Extensions.Configuration.Abstractions.dll
public class AppConfig
{
public static void Init(IConfiguration configuration)
{
AppConfigCommonModel appConfigCommonModel = new AppConfigCommonModel();
AppConfigDatabaseModel appConfigDatabaseModel = new AppConfigDatabaseModel();
configuration.Bind("CommonInfo", appConfigCommonModel);
configuration.Bind("Database", appConfigDatabaseModel);
}
}
根据自己的业务情况定义全局参数实体类,可以放在AppConfig类同一命名空间下
// 全局使用
public class AppConfigCommonModel
{
public static string Virtually { get; set; }
public static string IsOnline { get; set; }
}
public class AppConfigDatabaseModel
{
public static string Connection { get; set; }
}
在程序启动时就初始化,只执行一次,全局都能使用,一般参数值不会变,如果会有变动则需要重启或者使用其他策略
public class Startup
{
public IConfiguration Configuration { get; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public void ConfigureServices(IServiceCollection services)
{
// 配置参数初始化
AppConfig.Init(Configuration);
}
}