Guida introduttiva: Aggiungere flag di funzionalità a un'app console .NET/.NET Framework

In questa guida introduttiva si incorpora app Azure Configurazione in un'app console .NET per creare un'implementazione end-to-end della gestione delle funzionalità. È possibile usare Configurazione app per archiviare centralmente tutti i flag di funzionalità e controllarne gli stati.

Le librerie di Gestione funzionalità di .NET estendono il framework con il supporto per i flag di funzionalità. Queste librerie si basano sul sistema di configurazione di .NET. Si integrano con Configurazione app tramite il provider di configurazione di .NET.

Prerequisiti

Aggiungere un flag di funzionalità

Aggiungere un flag di funzionalità denominato Beta all'archivio Configurazione app e lasciare Label e Description con i relativi valori predefiniti. Per altre informazioni su come aggiungere flag di funzionalità a un archivio usando il portale di Azure o l'interfaccia della riga di comando, vedere Creare un flag di funzionalità.

Abilitare un flag funzionalità denominato Beta

Creare un'app console

È possibile usare Visual Studio per creare un nuovo progetto di app console.

  1. Avviare Visual Studio e selezionare File>Nuovo>Progetto.

  2. In Crea un nuovo progetto filtrare in base al tipo di progetto console e selezionare App console. Se si vuole creare un'app .NET Framework, selezionare invece App console (.NET Framework). Fare clic su Avanti.

  3. In Configura il nuovo progetto immettere un nome di progetto. Se si crea un'app .NET Framework, selezionare .NET Framework 4.7.2 o versione successiva in Framework. Fai clic su Crea.

Usare il flag di funzionalità

  1. Fare clic con il pulsante destro del mouse sul progetto e scegliere Gestisci pacchetti NuGet. Nella scheda Sfoglia cercare e aggiungere i pacchetti NuGet seguenti al progetto.

    Microsoft.Extensions.Configuration.AzureAppConfiguration
    Microsoft.FeatureManagement
    

    Assicurarsi che la versione di sia maggiore di Microsoft.FeatureManagement 3.1.0.

  2. Aprire Program.cs e aggiungere le istruzioni seguenti.

    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Configuration.AzureAppConfiguration;
    using Microsoft.FeatureManagement;
    
  3. Connessione a Configurazione app, specificando l'opzione UseFeatureFlags in modo che vengano recuperati i flag di funzionalità. Creare un ConfigurationFeatureDefinitionProvider oggetto per fornire la definizione del flag di funzionalità dalla configurazione e un oggetto FeatureManager per valutare lo stato dei flag di funzionalità. Visualizzare quindi un messaggio se il flag di funzionalità Beta è abilitato.

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

Compilare ed eseguire l'app in locale

  1. Impostare una variabile di ambiente denominata ConnectionString sulla stringa di connessione dell'archivio di Configurazione app.

    Se si usa il prompt dei comandi di Windows, eseguire il comando seguente.

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

    Riavviare il prompt dei comandi per rendere effettiva la modifica. Stampare il valore della variabile di ambiente per verificare che sia impostato correttamente.

  2. Riavviare Visual Studio per rendere effettiva la modifica.

  3. Premere CTRL+F5 per compilare ed eseguire l'applicazione.

  4. Nella console dovrebbero essere visualizzati gli output seguenti.

    App con flag di funzionalità disabilitato

  5. Accedere al portale di Azure. Selezionare Tutte le risorse e selezionare l'archivio Configurazione app creato in precedenza.

  6. Selezionare Gestione funzionalità e individuare il flag di funzionalità Beta . Abilitare il flag selezionando la casella di controllo in Abilitato.

  7. Eseguire di nuovo l'applicazione. Verrà visualizzato il messaggio Beta nella console.

    App con flag di funzionalità abilitato

Pulire le risorse

Se non si vuole continuare a usare le risorse create in questo articolo, eliminare il gruppo di risorse creato qui per evitare addebiti.

Importante

L'eliminazione di un gruppo di risorse è irreversibile. Il gruppo di risorse e tutte le risorse in esso contenute vengono eliminati in modo permanente. Assicurarsi di non eliminare accidentalmente il gruppo di risorse o le risorse sbagliate. Se le risorse per questo articolo sono state create in un gruppo di risorse che contiene altre risorse che si vogliono mantenere, eliminare ogni risorsa singolarmente dal rispettivo riquadro anziché eliminare il gruppo di risorse.

  1. Accedere al portale di Azure e selezionare Gruppi di risorse.
  2. Nella casella Filtra per nome immettere il nome del gruppo di risorse.
  3. Nell'elenco dei risultati selezionare il nome del gruppo di risorse per visualizzare una panoramica.
  4. Selezionare Elimina gruppo di risorse.
  5. Verrà chiesto di confermare l'eliminazione del gruppo di risorse. Immettere il nome del gruppo di risorse per confermare e selezionare Elimina.

Dopo qualche istante, il gruppo di risorse e tutte le risorse che contiene vengono eliminati.

Passaggi successivi

In questa guida introduttiva è stato creato un flag di funzionalità in Configurazione app e usato con un'app console. Per informazioni su come aggiornare in modo dinamico i flag di funzionalità e altri valori di configurazione senza riavviare l'applicazione, continuare con l'esercitazione successiva.