Базовый путь приложения функции Azure по умолчанию D: \ home \ site \ wwwroot Функция Azure 2.x - PullRequest
0 голосов
/ 16 марта 2019

В настоящее время по умолчанию базовый путь функции Azure установлен на «D: \ home \ site \ wwwroot».Например, при публикации VS загружает приложение в эту папку.

Мне нужно прочитать конфигурационный файл из этой папки.У нас есть проблема ExecutionContext равен нулю через внедрение зависимостей через конструктор

Установка новой переменной среды может вызвать проблему, если путь будет изменен в будущем.

Мой вопросвот как я могу использовать базовый путь приложения, который является надежным и стабильным, который работает с DI через конструктор.

Функция Azure 2.x

VS 2017

Ответы [ 2 ]

1 голос
/ 16 марта 2019

вы можете использовать function.json, чтобы иметь ваши пары ключей конфигурации. например:

System.Environment.GetEnvironmentVariable(name, EnvironmentVariableTarget.Process);

и в function.json вы можете сделать так: "mykey": "myvalue"

{
  "generatedBy": "Microsoft.NET.Sdk.Functions-1.0.24",
  "configurationSource": "attributes",
  "bindings": [
  {
      "direction":"in",
      "type": "timerTrigger",
      "useMonitor": true,
      "runOnStartup": false,
      "name": "myTimer",
      "mykey": "myvalue"
  }
  ],
      "disabled": false,
      "scriptFile": "../bin/**.dll",
      "entryPoint": "**.Run"
} 
0 голосов
/ 19 марта 2019

Существует переменная окружения, указывающая на каталог home.Это не изменится, так как многие сервисы, включая приложение-функцию, зависят от него.Ниже показано, как функция времени выполнения извлекает ее в среде Azure.

    string home = GetEnvironmentVariable("HOME");
    Path = System.IO.Path.Combine(home, "site", "wwwroot");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...