在beta8中的ConfigurationBuilder中指定应用程序基本路径

Hen*_*ema 12 c# configuration asp.net-core

我曾经为此指定了应用程序基本路径ConfigurationBuilder:

public Startup(IApplicationEnvironment appEnv)
{
    var configurationBuilder = new ConfigurationBuilder(appEnv.ApplicationBasePath)
        .AddJsonFile("config.json")
        .AddEnvironmentVariables();

    Configuration = configurationBuilder.Build();
}
Run Code Online (Sandbox Code Playgroud)

但是,从beta8开始,构造函数ConfigurationBuilder不再采用应用程序基本路径参数,现在抛出异常.

如何指定基本路径?

Hen*_*ema 15

如果我们查看源代码ConfigurationBuilder,我们可以看到构造函数不再接受表示应用程序基本路径的字符串.相反,我们必须在接口上使用SetBasePath()扩展方法IConfigurationBuilder来指定它:

public Startup(IApplicationEnvironment appEnv)
{
    var configurationBuilder = new ConfigurationBuilder()
        .SetBasePath(appEnv.ApplicationBasePath)
        .AddJsonFile("config.json")
        .AddEnvironmentVariables();

    Configuration = configurationBuilder.Build();
}
Run Code Online (Sandbox Code Playgroud)

特定的提交可以在这里找到.