Я создаю приложение-функцию Azure (v2). Задачи конфигурации, необходимые для всех функций, выполняются в классе Setup, который структурирован следующим образом:
[assembly: WebJobsStartup(typeof(Startup))]
internal class Startup : IWebJobsStartup
{
public void Configure(IWebJobsBuilder builder)
{
Configuration = new ConfigurationBuilder()
.SetBasePath(<functionAppDirectory>)
.AddJsonFile("local.settings.json")
.Build();
builder.AddDependencyInjection(ConfigureServices);
}
public IConfiguration Configuration { get; set; }
private void ConfigureServices(IServiceCollection services)
{
var connection = Configuration.GetConnectionString("<myconnection-string>");
...
}
}
В ConfigureServices
я хочу прочитать строку подключения из файла конфигурации. Для этого была указана базовая папка приложения функции с помощью SetBasePath
. Но я не нашел способа получить доступ к этому пути. Согласно https://github.com/Azure/azure-functions-host/wiki/Retrieving-information-about-the-currently-running-function, ExecutionContext
может быть введен в функцию, которая содержит путь. Но как мне получить доступ к ExecutionContext
в моем классе Startup
?