Краткое руководство. Создание приложения платформа .NET Framework с помощью Конфигурация приложений Azure

Внедрить Конфигурацию приложений Azure в приложение на базе .NET Framework можно двумя способами.

  • Построитель конфигураций для службы "Конфигурация приложений" позволяет загружать данные из этой службы в параметры приложения. Приложение получает доступ к конфигурации, как и всегда, с помощью ConfigurationManager. Вам не нужно вносить изменения в код, кроме изменения файлов app.config или web.config. В этом кратком руководстве показано, как это сделать.
  • Однако, как задумано в .NET Framework, параметры приложения могут обновляться только после перезапуска приложения. Поставщик Конфигурации приложений .NET — это библиотека .NET Standard. Она поддерживает динамическое кэширование и обновление конфигурации без перезапуска приложения. Если динамическая конфигурация важная для вас и вы готовы внести изменения в код, см. руководства с описанием, как внедрить динамические обновления конфигурации в консольное приложение .NET Framework и веб-приложение ASP.NET.

В этом кратком руководстве в качестве примера используется консольное приложение .NET Framework, но этот же подход применяется к приложению ASP.NET Web Forms и MVC.

Необходимые компоненты

Добавление ключа-значения

Добавьте следующее ключевое значение в хранилище Конфигурация приложений и оставьте метку и тип контента со значениями по умолчанию. Дополнительные сведения о добавлении значений ключей в хранилище с помощью портал Azure или ИНТЕРФЕЙСА командной строки см. в разделе "Создание значения ключа".

Ключ Значение
TestApp:Параметры:Message Данные из Конфигурация приложений Azure

Создание консольного приложения .NET Framework

  1. Откройте Visual Studio и выберите Создать проект.

  2. В разделе Создание проекта с помощью фильтра найдите тип проекта Консоль и щелкните Консольное приложение (.NET Framework) с C# из списка шаблонов проекта. Нажмите кнопку Далее.

  3. В окне Настроить новый проект введите имя проекта. В разделе Платформа выберите .NET Framework 4.7.2 или более позднюю версию. Щелкните Создать.

Подключение к хранилищу Конфигурации приложений

  1. Щелкните проект правой кнопкой мыши и выберите Управление пакетами NuGet. На вкладке Обзор найдите и добавьте в проект следующие пакеты NuGet.

    • Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration 1.0.0 или более поздней версии.
    • Microsoft.Configuration.ConfigurationBuilders.Environment 2.0.0 или более поздней версии.
    • System.Configuration.ConfigurationManager 4.6.0 или более поздней версии.
  2. Обновите файл проекта App.config:

    <configSections>
        <section name="configBuilders" type="System.Configuration.ConfigurationBuildersSection, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" restartOnExternalChanges="false" requirePermission="false" />
    </configSections>
    
    <configBuilders>
        <builders>
            <add name="MyConfigStore" mode="Greedy" connectionString="${ConnectionString}" type="Microsoft.Configuration.ConfigurationBuilders.AzureAppConfigurationBuilder, Microsoft.Configuration.ConfigurationBuilders.AzureAppConfiguration" />
            <add name="Environment" mode="Greedy" type="Microsoft.Configuration.ConfigurationBuilders.EnvironmentConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.Environment" />
        </builders>
    </configBuilders>
    
    <appSettings configBuilders="Environment,MyConfigStore">
        <add key="AppName" value="Console App Demo" />
        <add key="ConnectionString" value ="Set via an environment variable - for example, dev, test, staging, or production connection string." />
    </appSettings>
    

    Строка подключения к хранилищу службы "Конфигурация приложений" считывается из переменной среды ConnectionString. Добавьте построитель конфигураций Environment перед MyConfigStore в свойстве configBuilders раздела appSettings.

  3. Откройте файл Program.cs и обновите метод Main для использования службы "Конфигурация приложений", вызвав метод ConfigurationManager.

    static void Main(string[] args)
    {
        string message = System.Configuration.ConfigurationManager.AppSettings["TestApp:Settings:Message"];
    
        Console.WriteLine(message);
        Console.ReadKey();
    }
    

Сборка и запуск приложения

  1. Задайте переменную среды с именем ConnectionString для строки подключения ключа только для чтения, полученную при создании хранилища Конфигурации приложений.

    При использовании командной строки Windows выполните следующую команду:

    setx ConnectionString "connection-string-of-your-app-configuration-store"
    

    Если вы используете Windows PowerShell, выполните следующую команду:

    $Env:ConnectionString = "connection-string-of-your-app-configuration-store"
    
  2. Перезапустите Visual Studio, чтобы изменение вступило в силу.

  3. Нажмите клавиши CTRL+F5, чтобы скомпилировать и запустить консольное приложение. Вы должны увидеть сообщение из выходных данных Конфигурации приложений в консоли.

Очистка ресурсов

Если вы не планируете в дальнейшем использовать ресурсы, созданные при работе с этой статьей, удалите созданную группу ресурсов, чтобы избежать расходов.

Внимание

Удаление группы ресурсов — процесс необратимый. Группа ресурсов и все содержащиеся в ней ресурсы удаляются без возможности восстановления. Будьте внимательны, чтобы случайно не удалить не те ресурсы или группу ресурсов. Если ресурсы для работы с этой статьей созданы в группе ресурсов, которая содержит другие нужные ресурсы, удалите каждый ресурс отдельно в соответствующей области ресурса, чтобы не удалять группу ресурсов.

  1. Войдите на портал Azure и выберитеГруппы ресурсов.
  2. Введите имя группы ресурсов в поле Фильтровать по имени.
  3. В списке результатов выберите имя группы ресурсов, чтобы просмотреть общие сведения.
  4. Выберите команду Удалить группу ресурсов.
  5. Подтвердите операцию удаления группы ресурсов. Введите имя группы ресурсов, которую необходимо удалить, и нажмите Удалить.

Через некоторое время группа ресурсов и все ее ресурсы будут удалены.

Следующие шаги

В этом кратком руководстве описано, как создать хранилище службы "Конфигурация приложений" и использовать его с консольным приложением на основе .NET Framework. Чтобы узнать, как включить в приложении .NET Framework динамическое обновление параметров конфигурации, перейдите к следующим руководствам.