Udostępnij przez


Szybki start: dodawanie flag funkcji do aplikacji konsolowej .NET/.NET Framework

W tym szybkim starcie, dodasz usługę Azure App Configuration do aplikacji konsolowej .NET lub .NET Framework, aby utworzyć kompletną implementację zarządzania funkcjami. Za pomocą usługi App Configuration można centralnie przechowywać wszystkie flagi funkcji i kontrolować ich stany.

Biblioteki zarządzania funkcjami platformy .NET rozszerzają platformę .NET, zapewniając obsługę flag funkcji. Te biblioteki są oparte na systemie konfiguracji platformy .NET. Integrują się z usługą App Configuration za pośrednictwem dostawcy konfiguracji platformy .NET.

Wymagania wstępne

Dodawanie flagi funkcji

Dodaj flagę funkcji o nazwie Beta do sklepu App Configuration i pozostaw pole Etykieta i Opis z ich wartościami domyślnymi. Aby uzyskać więcej informacji na temat dodawania flag funkcji do magazynu przy użyciu witryny Azure Portal lub interfejsu wiersza polecenia platformy Azure, zobacz Tworzenie flagi funkcji.

Zrzut ekranu przedstawiający okno dialogowe

Konfigurowanie ustawień dostępu

Aplikacja utworzona w tym samouczku szybki start łączy się z magazynem App Configuration w celu uzyskania dostępu do ustawień flagi funkcjonalności. Aby nawiązać połączenie z usługą App Configuration, aplikacja może używać identyfikatora Entra firmy Microsoft lub parametrów połączenia. Microsoft Entra ID jest zalecanym podejściem.

Przypisz rolę danych w usłudze App Configuration

Domyślnie tworzona aplikacja używa DefaultAzureCredential do uwierzytelniania w sklepie App Configuration. DefaultAzureCredential to łańcuch poświadczeń tokenów. Aby autoryzacja przebiegała pomyślnie, musisz przyznać rolę Czytelnik danych konfiguracji aplikacji dla poświadczeń używanych przez aplikację. Aby uzyskać instrukcje, zobacz Authentication with token credentials (Uwierzytelnianie przy użyciu poświadczeń tokenu). Pozwól na wystarczający czas na propagację przypisania roli przed uruchomieniem aplikacji.

Ustawianie zmiennej środowiskowej

Aplikacja używa zmiennej środowiskowej do nawiązania połączenia z usługą App Configuration. Użyj jednego z następujących poleceń, aby ustawić zmienną środowiskową o nazwie Endpoint na punkt końcowy sklepu konfiguracji aplikacji.

  • Jeśli używasz wiersza polecenia, uruchom następujące polecenie:

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

    Zamknij i otwórz ponownie wiersz polecenia, aby zmiana została w życie. Sprawdź, czy zmienna środowiskowa jest ustawiona przez wydrukowanie jej wartości w konsoli.

  • Jeśli używasz programu Windows PowerShell, uruchom następujące polecenie:

    [System.Environment]::SetEnvironmentVariable("Endpoint", "<endpoint-of-your-app-configuration-store>", "User")
    

Tworzenie aplikacji konsolowej

Aby utworzyć nowy projekt aplikacji konsolowej przy użyciu programu Visual Studio, wykonaj następujące kroki.

  1. Otwórz program Visual Studio. Jeśli jest już uruchomiony, zamknij i otwórz go ponownie, aby rozpoznać zmienną środowiskową ustawioną w poprzedniej sekcji.

  2. W programie Visual Studio wybierz pozycję Plik>nowy>projekt.

  3. W oknie dialogowym Tworzenie nowego projektu wprowadź Konsola w polu wyszukiwania.

    • Jeśli chcesz utworzyć aplikację platformy .NET, wybierz pozycję Aplikacja konsolowa, a następnie wybierz pozycję Dalej.
    • Jeśli chcesz utworzyć aplikację .NET Framework, wybierz pozycję Aplikacja konsolowa (.NET Framework), a następnie wybierz pozycję Dalej.
  4. W oknie dialogowym Konfigurowanie nowego projektu wprowadź nazwę projektu.

    • Jeśli chcesz utworzyć aplikację .NET, wybierz przycisk Dalej , aby otworzyć okno dialogowe Dodatkowe informacje . W tym oknie dialogowym wybierz platformę .NET, wyczyść pole wyboru Nie używaj instrukcji najwyższego poziomu , a następnie wybierz pozycję Utwórz.
    • Jeśli chcesz utworzyć aplikację .NET Framework, wybierz pozycję .NET Framework 4.7.2 lub nowszą wersję w obszarze Framework, a następnie wybierz pozycję Utwórz.

Używanie flagi funkcji

Aby użyć flagi funkcji w aplikacji, wykonaj następujące kroki.

  1. W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt, a następnie wybierz pozycję Zarządzaj pakietami NuGet.

  2. Na karcie Przeglądaj wyszukaj i dodaj do projektu najnowsze stabilne wersje następujących pakietów NuGet:

    • Microsoft.Extensions.Configuration.AzureAppConfiguration
    • Microsoft.FeatureManagement
    • Azure.Identity
  3. Otwórz Program.cs i dodaj następujące instrukcje na początku pliku.

    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.AzureAppConfiguration;
    using Microsoft.FeatureManagement;
    using Azure.Identity;
    
  4. Jak pokazano w poniższych blokach kodu, zaktualizuj Program.cs , wprowadzając trzy zmiany:

    • Aby załadować flagi funkcji z usługi App Configuration, dodaj wywołanie metody UseFeatureFlags .
    • Aby odczytać flagi funkcji z konfiguracji, utwórz wystąpienie FeatureManager klasy.
    • Wyświetl komunikat, jeśli flaga funkcji beta jest włączona.

    .NET

    IConfiguration configuration = new ConfigurationBuilder()
        .AddAzureAppConfiguration(options =>
        {
            string endpoint = Environment.GetEnvironmentVariable("Endpoint");
            options.Connect(new Uri(endpoint), new DefaultAzureCredential())
                   .UseFeatureFlags();
        }).Build();
    
    var featureManager = new FeatureManager(
        new ConfigurationFeatureDefinitionProvider(configuration));
    
    if (await featureManager.IsEnabledAsync("Beta"))
    {
        Console.WriteLine("Welcome to the beta!");
    }
    
    Console.WriteLine("Hello World!");
    

    .NET Framework

    public static async Task Main(string[] args)
    {         
        IConfiguration configuration = new ConfigurationBuilder()
            .AddAzureAppConfiguration(options =>
            {
                string endpoint = Environment.GetEnvironmentVariable("Endpoint");
                options.Connect(new Uri(endpoint), new DefaultAzureCredential())
                       .UseFeatureFlags();
            }).Build();
    
        var featureManager = new FeatureManager(
            new ConfigurationFeatureDefinitionProvider(configuration));
    
        if (await featureManager.IsEnabledAsync("Beta"))
        {
            Console.WriteLine("Welcome to the beta!");
        }
    
        Console.WriteLine("Hello World!");
    }
    

Lokalne kompilowanie i uruchamianie aplikacji

  1. W programie Visual Studio wybierz Ctrl+F5 , aby skompilować i uruchomić aplikację. W konsoli powinny zostać wyświetlone następujące dane wyjściowe.

    Zrzut ekranu przedstawiający okno wiersza polecenia zawierające dane wyjściowe z aplikacji. Dane wyjściowe zawierają tekst Hello World!

  2. Zaloguj się w witrynie Azure Portal. Wybierz Wszystkie zasoby, a następnie wybierz magazyn usługi App Configuration.

  3. Wybierz pozycję Menedżer funkcji i znajdź flagę funkcji beta . Włącz przełącznik Włączone , aby włączyć flagę .

  4. Uruchom ponownie aplikację. Komunikat Beta powinien pojawić się w konsoli programu.

    Zrzut ekranu przedstawiający okno wiersza polecenia zawierające dane wyjściowe z aplikacji. Dane wyjściowe zawierają tekst Witamy w wersji beta! i Hello World!

Czyszczenie zasobów

Jeśli nie chcesz nadal korzystać z zasobów utworzonych w tym artykule, usuń utworzoną tutaj grupę zasobów, aby uniknąć naliczania opłat.

Ważne

Usunięcie grupy zasobów jest nieodwracalne. Grupa zasobów i wszystkie zasoby w niej są trwale usuwane. Upewnij się, że nie usuniesz przypadkowo nieprawidłowej grupy zasobów ani zasobów. Jeśli zasoby dla tego artykułu zostały utworzone w grupie zasobów zawierającej inne zasoby, które chcesz zachować, usuń każdy zasób oddzielnie z odpowiedniego okienka zamiast usuwać grupę zasobów.

  1. Zaloguj się do witryny Azure Portal i wybierz pozycję Grupy zasobów.
  2. W polu Filtruj według nazwy wprowadź nazwę grupy zasobów.
  3. Na liście wyników wybierz nazwę grupy zasobów, aby wyświetlić przegląd.
  4. Wybierz pozycję Usuń grupę zasobów.
  5. Zobaczysz prośbę o potwierdzenie usunięcia grupy zasobów. Wprowadź nazwę grupy zasobów, aby potwierdzić, a następnie wybierz pozycję Usuń.

Po kilku chwilach grupa zasobów i wszystkie jej zasoby zostaną usunięte.

Następne kroki

W tym przewodniku Szybki start utworzono flagę funkcji w usłudze App Configuration i użyto jej w aplikacji konsolowej. Aby dowiedzieć się, jak dynamicznie aktualizować flagi funkcji i inne wartości konfiguracji bez ponownego uruchamiania aplikacji, zobacz następujące samouczki:

Aby włączyć funkcję zarządzania funkcjonalnościami dla innych typów aplikacji, zobacz następujące przewodniki szybkiego startu:

Pełny przebieg funkcji biblioteki zarządzania funkcjami platformy .NET można znaleźć w następującym dokumencie: