Delen via


Quickstart: Functievlagmen toevoegen aan een .NET/.NET Framework-console-app

In deze quickstart neemt u Azure App Configuration op in een .NET- of .NET Framework-console-app om een end-to-end implementatie van functiebeheer te maken. U kunt App Configuration gebruiken om al uw functievlagmen centraal op te slaan en hun statussen te beheren.

De .NET-functiebeheerbibliotheken breiden .NET uit door ondersteuning voor functievlagmen te bieden. Deze bibliotheken worden boven op het .NET-configuratiesysteem gebouwd. Ze integreren met App Configuration via diens configuratieprovider voor .NET.

Vereisten

Een functievlag toevoegen

Voeg een functievlag met de naam Beta toe aan het App Configuration-archief en laat label en beschrijving ongewijzigd met de standaardwaarden. Zie Een functievlag maken voor meer informatie over het toevoegen van functievlagmen aan een winkel met behulp van Azure Portal of de Azure CLI.

Schermopname van het dialoogvenster Een nieuwe functievlag maken in Azure Portal. De naam- en sleutelvelden bevatten bèta. Het label en de beschrijving zijn leeg.

Toegangsinstellingen configureren

De app die u in deze quickstart maakt, maakt verbinding met uw App Configuration-store om toegang te krijgen tot uw instellingen voor featurevlaggen. Als u verbinding wilt maken met App Configuration, kan uw app Microsoft Entra ID of een verbindingsreeks gebruiken. Microsoft Entra ID is de aanbevolen aanpak.

Een app-configuratiegegevensrol toewijzen

Standaard gebruikt de app die u maakt DefaultAzureCredential om zich te authentiseren bij uw App Configuration-archief. DefaultAzureCredential is een keten van tokenreferenties. Om te kunnen werken, moet u de rol App Configuration Data Reader toewijzen aan de referentie die uw app gebruikt. Zie Verificatie met tokenreferenties voor instructies. Geef voldoende tijd om de roltoewijzing te verspreiden voordat u uw app uitvoert.

Een omgevingsvariabele instellen

Uw app maakt gebruik van een omgevingsvariabele om de verbinding met App Configuration tot stand te brengen. Gebruik een van de volgende opdrachten om een omgevingsvariabele met de naam Endpoint in te stellen op het eindpunt van uw App Configuration-archief.

  • Als u opdrachtprompt gebruikt, voert u de volgende opdracht uit:

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

    Sluit de opdrachtprompt en open deze opnieuw, zodat de wijziging van kracht wordt. Controleer of de omgevingsvariabele is ingesteld door de waarde ervan af te drukken op de console.

  • Als u Windows PowerShell gebruikt, voert u de volgende opdracht uit:

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

Een console-app maken

Als u Visual Studio wilt gebruiken om een nieuw console-app-project te maken, voert u de volgende stappen uit.

  1. Open Visual Studio. Als deze al wordt uitgevoerd, sluit u deze en opent u deze opnieuw, zodat de omgevingsvariabele die u in de vorige sectie hebt ingesteld, wordt herkend.

  2. Selecteer bestand>nieuw>project in Visual Studio.

  3. Voer in het dialoogvenster Een nieuw project makenConsole in het zoekvak in.

    • Als u een .NET-app wilt maken, selecteert u Console-app en selecteert u Vervolgens.
    • Als u een .NET Framework-app wilt maken, selecteert u Console-app (.NET Framework) en selecteert u Vervolgens.
  4. Voer in het dialoogvenster Uw nieuwe project configureren een projectnaam in.

    • Als u een .NET-app wilt maken, selecteert u Volgende om het dialoogvenster Aanvullende informatie te openen. Selecteer in dat dialoogvenster een .NET Framework, schakel het selectievakje Geen instructies op het hoogste niveau gebruiken uit en selecteer vervolgens Maken.
    • Als u een .NET Framework-app wilt maken, selecteert u .NET Framework 4.7.2 of een latere versie onder Framework en selecteert u Vervolgens Maken.

De functievlag gebruiken

Voer de volgende stappen uit om de functievlag in uw app te gebruiken.

  1. Klik in Solution Explorer met de rechtermuisknop op uw project en selecteer NuGet-pakketten beheren.

  2. Zoek en voeg op het tabblad Bladeren de nieuwste stabiele versies van de volgende NuGet-pakketten toe aan uw project:

    • Microsoft.Extensions.Configuration.AzureAppConfiguration
    • Microsoft.FeatureManagement
    • Azure.Identity
  3. Open Program.cs en voeg de volgende instructies toe aan het begin van het bestand.

    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.AzureAppConfiguration;
    using Microsoft.FeatureManagement;
    using Azure.Identity;
    
  4. Zoals weergegeven in de volgende codeblokken, werk Program.cs bij door drie wijzigingen aan te brengen.

    • Als u functievlagmen vanuit App Configuration wilt laden, voegt u een aanroep toe aan de UseFeatureFlags methode.
    • Als u functievlagmen uit de configuratie wilt lezen, maakt u een exemplaar van FeatureManager.
    • Geef een bericht weer als de vlag bètafunctie is ingeschakeld.

    .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!");
    }
    

De app lokaal bouwen en uitvoeren

  1. Selecteer In Visual Studio Ctrl+F5 om de toepassing te bouwen en uit te voeren. De volgende uitvoer moet worden weergegeven in de console.

    Schermopname van een opdrachtpromptvenster met uitvoer van de app. De uitvoer bevat de tekst Hallo wereld!

  2. Meld u aan bij het Azure-portaal. Selecteer Alle resources en selecteer vervolgens uw App Configuration-archief.

  3. Selecteer Functiebeheer en zoek de bètafunctievlag. Schakel de wisselknop Ingeschakeld in om de vlag in te schakelen.

  4. Voer de toepassing opnieuw uit. Het bètabericht moet worden weergegeven in de console.

    Schermopname van een opdrachtpromptvenster met uitvoer van de app. De uitvoer bevat de tekst Welkom bij de bètaversie. en Hallo wereld!

Resources opschonen

Als u de resources die in dit artikel zijn gemaakt niet wilt blijven gebruiken, verwijdert u de resourcegroep die u hier hebt gemaakt om kosten te voorkomen.

Belangrijk

Het verwijderen van een resourcegroep kan niet ongedaan worden gemaakt. De resourcegroep en alle resources daarin worden permanent verwijderd. Zorg ervoor dat u niet per ongeluk de verkeerde resourcegroep of resources verwijdert. Als u de resources voor dit artikel in een resourcegroep hebt gemaakt die andere resources bevat die u wilt behouden, moet u elke resource afzonderlijk verwijderen uit het deelvenster in plaats van dat u de resourcegroep verwijdert.

  1. Meld u aan bij de Azure-portal en selecteer Resourcegroepen.
  2. Voer de naam van de resourcegroep in het vak Filteren op naam in.
  3. Selecteer in de resultatenlijst de resourcegroepnaam om een overzicht te bekijken.
  4. Selecteer Resourcegroep verwijderen.
  5. U wordt gevraagd om het verwijderen van de resourcegroep te bevestigen. Voer de naam van de resourcegroep in ter bevestiging en selecteer Verwijderen.

Na enkele ogenblikken worden de resourcegroep en alle bijbehorende resources verwijderd.

Volgende stappen

In deze quickstart hebt u een functievlag gemaakt in App Configuration en deze gebruikt met een console-app. Zie de volgende zelfstudies voor meer informatie over het dynamisch bijwerken van functievlagmen en andere configuratiewaarden zonder de toepassing opnieuw te starten:

Zie de volgende quickstarts om functiebeheermogelijkheden in te schakelen voor andere typen apps:

Zie het volgende document voor de volledige functierundown van de .NET-functiebeheerbibliotheek: