Schnellstart: Hinzufügen von Featureflags zu einer .NET-/.NET Framework-Konsolen-App

In diesem Schnellstart integrieren Sie Azure App Configuration in eine .NET Framework-App, um eine End-to-End-Implementierung der Featureverwaltung zu erzielen. Mit App Configuration können Sie alle Featureflags zentral speichern und ihren jeweiligen Zustand steuern.

Die .NET-Bibliotheken für die Featureverwaltung erweitern das Framework um Unterstützung für Featureflags. Diese Bibliotheken bauen auf dem .NET-Konfigurationssystem auf. Über ihren .NET-Konfigurationsanbieter lassen sie sich in App Configuration integrieren.

Voraussetzungen

Hinzufügen eines Featureflags

Fügen Sie dem App Configuration-Speicher ein Featureflag mit dem Namen Beta hinzu, und behalten Sie die Standardwerte für Bezeichnung und Beschreibung bei. Weitere Informationen zum Hinzufügen von Featureflags zu einem Speicher mithilfe des Azure-Portals oder der CLI finden Sie unter Erstellen eines Featureflags.

Aktivieren eines Featureflags namens„Beta“

Erstellen einer Konsolenanwendung

Sie können Visual Studio verwenden, um ein neues Konsolen-App-Projekt zu erstellen.

  1. Starten Sie Visual Studio, und wählen Sie Datei>Neu>Projekt aus.

  2. Erstellen Sie in Neues Projekt erstellen einen Filter nach dem Projekttyp Konsole, und wählen Sie Konsolen-App aus. Wenn Sie eine .NET Framework-App erstellen möchten, wählen Sie stattdessen Konsolen-App (.NET Framework) aus. Klicken Sie auf Weiter.

  3. Geben Sie unter Neues Projekt konfigurieren einen Projektnamen ein. Wenn Sie eine .NET Framework-App erstellen, wählen Sie .NET Framework 4.7.2 oder höher unter Framework aus. Klicken Sie auf Erstellen.

Verwenden des Featureflags

  1. Klicken Sie mit der rechten Maustaste auf Ihr Projekt, und wählen Sie NuGet-Pakete verwalten aus. Suchen Sie auf der Registerkarte Durchsuchen die folgenden NuGet-Pakete, und fügen Sie sie Ihrem Projekt hinzu.

    Microsoft.Extensions.Configuration.AzureAppConfiguration
    Microsoft.FeatureManagement
    

    Stellen Sie sicher, dass die Version von Microsoft.FeatureManagement höher als 3.1.0 ist.

  2. Öffnen Sie Program.cs, und fügen Sie die folgenden Anweisungen hinzu.

    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.AzureAppConfiguration;
    using Microsoft.FeatureManagement;
    
  3. Stellen Sie eine Verbindung mit App Configuration her, und geben Sie dabei die Option UseFeatureFlags an, sodass Featureflags abgerufen werden. Erstellen Sie einen ConfigurationFeatureDefinitionProvider, um Featureflag-Definitionen aus der Konfiguration bereitzustellen und einen FeatureManager, um den Status von Featureflags auszuwerten. Zeigen Sie dann eine Meldung an, wenn das Beta-Featureflag aktiviert ist.

    IConfiguration configuration = new ConfigurationBuilder()
        .AddAzureAppConfiguration(options =>
        {
            options.Connect(Environment.GetEnvironmentVariable("ConnectionString"))
                .UseFeatureFlags();
        }).Build();
    
    IFeatureDefinitionProvider featureDefinitionProvider = new ConfigurationFeatureDefinitionProvider(configuration);
    
    IFeatureManager featureManager = new FeatureManager(
        featureDefinitionProvider, 
        new FeatureManagementOptions());
    
    if (await featureManager.IsEnabledAsync("Beta"))
    {
        Console.WriteLine("Welcome to the beta!");
    }
    
    Console.WriteLine("Hello World!");
    

Lokales Erstellen und Ausführen der App

  1. Legen Sie eine Umgebungsvariable mit dem Namen ConnectionString auf die Verbindungszeichenfolge Ihres App Configuration-Speichers fest.

    Führen Sie bei Verwendung der Windows-Eingabeaufforderung den folgenden Befehl aus.

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

    Starten Sie die Eingabeaufforderung neu, damit die Änderung wirksam wird. Geben Sie den Wert der Umgebungsvariablen aus, um zu überprüfen, ob er richtig festgelegt wurde.

  2. Starten Sie Visual Studio, damit die Änderung wirksam wird.

  3. Drücken Sie STRG+F5, um die Anwendung zu erstellen und auszuführen.

  4. Die folgenden Ausgaben sollten an der Konsole angezeigt werden.

    App mit deaktiviertem Featureflag

  5. Melden Sie sich beim Azure-Portal an. Wählen Sie Alle Ressourcen und dann den App Configuration-Speicher aus, den Sie zuvor erstellt haben.

  6. Wählen Sie Feature-Manager aus, und suchen Sie das Featureflag Beta. Aktivieren Sie das Flag „Beta“, indem Sie das Kontrollkästchen unter Aktiviert aktivieren.

  7. Erneutes Ausführen der Anwendung An der Konsole sollte die Betameldung angezeigt werden.

    App mit aktiviertem Featureflag

Bereinigen von Ressourcen

Wenn Sie die in diesem Artikel erstellten Ressourcen nicht mehr verwenden möchten, löschen Sie die erstellte Ressourcengruppe, um Kosten zu vermeiden.

Wichtig

Das Löschen einer Ressourcengruppe kann nicht rückgängig gemacht werden. Die Ressourcengruppe und alle darin enthaltenen Ressourcen werden unwiderruflich gelöscht. Achten Sie daher darauf, dass Sie nicht versehentlich die falsche Ressourcengruppe oder die falschen Ressourcen löschen. Falls Sie die Ressourcen für diesen Artikel in einer Ressourcengruppe erstellt haben, die andere beizubehaltende Ressourcen enthält, löschen Sie die Ressourcen einzeln über den entsprechenden Bereich, statt die Ressourcengruppe zu löschen.

  1. Melden Sie sich beim Azure-Portal an, und klicken Sie auf Ressourcengruppen.
  2. Geben Sie im Feld Nach Name filtern den Namen Ihrer Ressourcengruppe ein.
  3. Wählen Sie in der Ergebnisliste den Ressourcengruppennamen aus, um eine Übersicht anzuzeigen.
  4. Wählen Sie die Option Ressourcengruppe löschen.
  5. Sie werden aufgefordert, das Löschen der Ressourcengruppe zu bestätigen. Geben Sie zur Bestätigung den Namen Ihrer Ressourcengruppe ein, und klicken Sie auf Löschen.

Daraufhin werden die Ressourcengruppe und alle darin enthaltenen Ressourcen gelöscht.

Nächste Schritte

In diesem Schnellstart haben Sie ein Featureflag in App Configuration erstellt und mit einer Konsolen-App verwendet. Fahren Sie mit dem nächsten Tutorial fort, um zu erfahren, wie Sie Featureflags und andere Konfigurationswerte dynamisch aktualisieren, ohne die Anwendung neu zu starten.