Поделиться через


Краткое руководство. Создание приложения платформа .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:Settings:Message Данные из Конфигурация приложений Azure

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

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

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

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

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

Подключитесь к хранилищу Конфигурация приложений с помощью идентификатора Microsoft Entra (рекомендуется) или строка подключения.

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

    • Microsoft.ConfigurationBuilders.AzureAppConfiguration
    • Microsoft.Configuration.ConfigurationBuilders.Environment
    • System.Configuration.ConfigurationManager
  2. Обновите файл конфигурации App.config проекта следующим образом. Вы можете подключиться к хранилищу Конфигурация приложений с помощью идентификатора Microsoft Entra (рекомендуется) или строка подключения.

    Используется DefaultAzureCredential для проверки подлинности в хранилище Конфигурация приложений по умолчанию. Следуйте инструкциям, чтобы назначить учетные данные роли чтения данных Конфигурация приложений. Перед запуском приложения обязательно предоставьте достаточно времени для распространения разрешения.

    <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" endpoint="${Endpoint}" 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="Endpoint" value ="Set via an environment variable - for example, dev, test, staging, or production endpoint." />
    </appSettings>
    

    Значение конечной точки хранилища Конфигурация приложений считывается из переменной Endpointсреды. Вы также добавляете Environment построитель конфигураций перед MyConfigStore свойством configBuildersappSettings раздела.

  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. Задайте переменную среды.

    Задайте переменную среды с именем Endpoint в конечной точке хранилища Конфигурация приложений, найденной в разделе "Обзор хранилища" в портал Azure.

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

    setx Endpoint "<endpoint-of-your-app-configuration-store>"
    

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

    $Env:Endpoint = "<endpoint-of-your-app-configuration-store>"
    

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

    export Endpoint='<endpoint-of-your-app-configuration-store>'
    
  2. Перезапустите Visual Studio, чтобы изменение вступило в силу.

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

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

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

Внимание

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

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

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

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

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