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

时间:2015-10-16 11:39:25

标签: c# configuration asp.net-core

我过去常常为ConfigurationBuilder指定应用程序基本路径:

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

    Configuration = configurationBuilder.Build();
}

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

如何指定基本路径?

1 个答案:

答案 0 :(得分:15)

如果我们查看source code of ConfigurationBuilder,我们可以看到构造函数不再接受表示应用程序基本路径的字符串。相反,我们必须使用IConfigurationBuilder接口上的SetBasePath() extension method来指定它:

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

    Configuration = configurationBuilder.Build();
}

可以找到特定的提交here