C# 设置Azure功能应用程序';s基本目录wtih Azure函数应用程序2.x

C# 设置Azure功能应用程序';s基本目录wtih Azure函数应用程序2.x,c#,azure,asp.net-core,azure-functions,C#,Azure,Asp.net Core,Azure Functions,我需要将Azure Functions应用程序的基本目录设置为以下类似的AzureWebJobscriptrot,但出现异常 var config = new ConfigurationBuilder() .SetBasePath("%HOME%\site\wwwroot") //error .AddJsonFile("Settings.json", optional: true, reloadOnChange: true) .AddEnvironmentVariab

我需要将Azure Functions应用程序的基本目录设置为以下类似的
AzureWebJobscriptrot
,但出现异常

var config = new ConfigurationBuilder()
    .SetBasePath("%HOME%\site\wwwroot")   //error
    .AddJsonFile("Settings.json", optional: true, reloadOnChange: true)
    .AddEnvironmentVariables()
    .Build();
System.ArgumentException:路径必须是绝对路径。参数名称: 扎根于 Microsoft.Extensions.FileProviders.PhysicalFileProvider..ctor(字符串 根目录,排除过滤器)位于 Microsoft.Extensions.Configuration.FileConfigurationExtensions.SetBasePath(IConfigurationBuilder 生成器,字符串基路径)

Azure功能2.x

VS 2017


在使用路径之前,您可能需要先展开路径。这样,嵌入在字符串中的环境变量可以替换为变量的等效值。生成配置的有效基本路径

var AzureWebJobsScriptRoot = "%HOME%\site\wwwroot";

var expandedRootPath = Environment.ExpandEnvironmentVariables(AzureWebJobsScriptRoot);

var config = new ConfigurationBuilder()
    .SetBasePath(expandedRootPath)
    .AddJsonFile("Settings.json", optional: true, reloadOnChange: true)
    .AddEnvironmentVariables()
    .Build();
参考文献