#秋日生活打卡季#
在.NET Core中使用IOptionsMonitor
public class CustomConfig
{
public string Key1 { get; set; }
public string Key2 { get; set; }
}
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Options;
using System;
namespace CustomConfigApp
{
class Program
{
static void Main(string[] args)
{
var host = Host.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((hostContext, config) =>
{
config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
})
.ConfigureServices((hostContext, services) =>
{
services.Configure(hostContext.Configuration.GetSection("CustomSection"));
})
.Build();
var customConfig = host.Services.GetRequiredService>().CurrentValue;
Console.WriteLine(#34;Key1: {customConfig.Key1}");
Console.WriteLine(#34;Key2: {customConfig.Key2}");
// 监视配置文件的更改
host.Services.GetRequiredService>().OnChange((config) =>
{
Console.WriteLine("Configuration changed.");
Console.WriteLine(#34;Key1: {config.Key1}");
Console.WriteLine(#34;Key2: {config.Key2}");
});
Console.ReadLine();
}
}
}
使用IOptionsMonitor
为了使配置文件的更改生效,需要设置reloadOnChange参数为true:
config.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
页面更新:2024-03-21
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号