簡體   English   中英

C# Do.net 核心控制台 appsettings.json 運行時重新加載

[英]C# Dotnet core Console appsettings.json runtime reload

我需要在控制台應用程序運行時更改 appsettings.json。 我用來加載 appsettings.json 的代碼只在啟動時加載 appsettings.json 並且一旦應用程序運行它就不會刷新。 有人可以幫我解決這個問題嗎?

public IConfigurationRoot GetAppssetingsConfig()
    {
        
        var builder = new ConfigurationBuilder()
                       .SetBasePath(Directory.GetCurrentDirectory())
                       .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
                       .AddEnvironmentVariables();

        IConfigurationRoot configuration = builder.Build();
        configuration.Reload();

        return configuration;
    }

我所期望的是,每次當我調用上面的 function 時,它都會讀取 appsettings.json,但是這並沒有發生。 感謝幫助

配置正在監視(通過reloadOnChange: true )當前工作目錄中的 appsettings.json 文件(通過Directory.GetCurrentDirectory() )。

如果調試的話,這是構建目錄。

對項目的 appsettings.json 文件(“主”副本)的編輯不會在調試時反映出來。 相反,編輯構建目錄中的副本。

嘗試這個

public IConfiguration GetAppssetingsConfig()
{
 return new ConfigurationBuilder()
            .SetBasePath(Directory.GetCurrentDirectory())
            .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
            .AddEnvironmentVariables()
            .Build();
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM