Функции Azure v2 - новая настройка и развертывание .netcore - PullRequest
0 голосов
/ 08 октября 2018

Теперь, когда мы можем использовать чрезвычайно гибкий механизм конфигурации из .NETCore - мы можем сделать что-то вроде этого:

   private static IConfigurationRoot SetConfig(ExecutionContext executionContext)
    {
        return new ConfigurationBuilder()
           .SetBasePath(executionContext.FunctionAppDirectory)
           .AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
           .AddEnvironmentVariables()
           .Build();
    }

Это замечательно, поскольку позволяет вам помещать более сложные данные конфигурации в файл конфигурации- например,

    {
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "<< removed >>",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet",
    "APPINSIGHTS_INSTRUMENTATIONKEY": "<< removed >>"
  },
  "MyCustomSettings": [
    {
      "ConnectionString": "<< removed >>",
      "Folders": [
        {
          "ShareName": "share1",
          "FolderName": "folder1"
        },
        {
          "ShareName": "share2",
          "FolderName": "folder2"
        }
      ]
    }
  ]
}

Снова - отличные новости!Теперь я могу получить доступ к моей строго типизированной конфигурации с помощью config ["MyCustomSettings"]

Что я не получаю - это то, как это можно развернуть при публикации функции.Только функция «Значения» переносится в функцию «Настройки приложения» Azure.Очевидно, я могу поместить этот пользовательский json в файл json и добавить его в оператор загрузки, например local.settings.json

.AddJsonFile("my-custom-settings.json", optional: false, reloadOnChange: true)

, но затем этот файл должен быть включен в развертывание и не сохраняетсябезопасно.

Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...