Ai
4 Star 24 Fork 2

IoTSharp/Extensions.Configuration.GitRepository

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
Program.cs 1.51 KB
一键复制 编辑 原始数据 按行查看 历史
麦壳饼 提交于 2025-04-17 18:32 +08:00 . 避免重复的 ChangeToken.OnChange
using Microsoft.Extensions.Primitives;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddControllers();
builder.Services.AddOpenApi();
builder.Configuration.AddUserSecrets("personal_access_tokens");
builder.Configuration.AddGitRepository(cfg => cfg.WithGitLab()
.WithRepositoryPath("IoTSharp/gitlabcfg")
.WithAuthenticationToken(builder.Configuration.GetValue<string>("personal_access_tokens"))
.WithFileName($"appsettings.json")
.WithCache($"{builder.Environment.ContentRootPath}{System.IO.Path.DirectorySeparatorChar}appsettings.{builder.Environment.EnvironmentName}.json")
);
var app = builder.Build();
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.MapOpenApi();
}
Console.WriteLine($"abc={app.Configuration.GetValue<string>("abc")}");
ChangeToken.OnChange(() => app.Configuration.GetReloadToken(), () =>
{
Console.WriteLine($"abc={app.Configuration.GetValue<string>("abc")}");
var settings = app.Configuration.Get<AppSettings>();
foreach (var item in settings?.Menus)
{
Console.WriteLine($"Menu={item}");
}
});
app.UseAuthorization();
app.MapControllers();
app.Run();
public class AppSettings
{
public List<string> Menus { get; set; } = new List<string>();
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/IoTSharp/Extensions.Configuration.GitRepository.git
git@gitee.com:IoTSharp/Extensions.Configuration.GitRepository.git
IoTSharp
Extensions.Configuration.GitRepository
Extensions.Configuration.GitRepository
main

搜索帮助