Avvio rapido: Aggiungere flag di funzionalità a un'app console .NET/.NET Framework
In questo guida di avvio rapido si incorpora Configurazione app di Azure in un'app console .NET per creare un'implementazione end-to-end della gestione delle funzionalità. È possibile usare il servizio Configurazione app per archiviare tutti i flag di funzionalità in una posizione centralizzata 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
- Un account Azure con una sottoscrizione attiva. Crearne una gratuitamente.
- Un Archivio di configurazione app. Creare un archivio.
- Visual Studio
- .NET SDK 6.0 o versione successiva per l'app console .NET.
- .NET Framework 4.7.2 o versione successiva per l'app console .NET Framework.
Aggiungere un flag di funzionalità
Aggiungere un flag di funzionalità chiamato Beta all’archivio di Configurazione app e lasciare Etichetta e Descrizione con i relativi valori predefiniti. Per altre informazioni su come aggiungere flag di funzionalità a un archivio tramite il portale di Azure o l'interfaccia della riga di comando, vedere Creare un flag di funzionalità.
Creare un'app console
È possibile usare Visual Studio per creare un nuovo progetto di app console.
Avviare Visual Studio e selezionare File>Nuovo>Progetto.
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.
In Configura il nuovo progetto immettere un nome di progetto. Se si sta creando un'app .NET Framework, selezionare .NET Framework 4.7.2 o versione successiva in Framework. Cliccare su Crea.
Usare il flag di funzionalità
Fare clic con il pulsante destro del mouse sul progetto e scegliere Gestisci pacchetti NuGet. Nella scheda Sfoglia cercare e aggiungere le versioni stabili più recenti dei pacchetti NuGet seguenti al progetto.
Microsoft.Extensions.Configuration.AzureAppConfiguration Microsoft.FeatureManagement Azure.Identity
Aprire Program.cs e aggiungere le istruzioni seguenti:
using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration.AzureAppConfiguration; using Microsoft.FeatureManagement; using Azure.Identity;
Aggiornare il file Program.cs e aggiungere una chiamata al
UseFeatureFlags
metodo per caricare i flag di funzionalità da Configurazione app. Creare quindi unFeatureManager
oggetto per leggere i flag di funzionalità dalla configurazione. Visualizzare infine un messaggio se il flag di funzionalità Beta è abilitato.È possibile connettersi al negozio Configurazione app usando Microsoft Entra ID (scelta consigliata) o un stringa di connessione.
Per impostazione predefinita, usare per eseguire l'autenticazione
DefaultAzureCredential
nell'archivio Configurazione app. Seguire le istruzioni per assegnare le credenziali al ruolo lettore dati Configurazione app. Assicurarsi di consentire tempo sufficiente per la propagazione dell'autorizzazione prima di eseguire l'applicazione..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!"); }
Compilare ed eseguire l'app in locale
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. Verificare che sia impostato correttamente stampando il valore della variabile di ambiente.
Riavviare Visual Studio per rendere effettiva la modifica.
Premere CTRL+F5 per compilare ed eseguire l'applicazione.
Nella console verranno visualizzati gli output seguenti.
Accedere al portale di Azure. Selezionare Tutte le risorse e selezionare l’archivio di Configurazione app creato in precedenza.
Selezionare Gestione funzionalità e individuare il flag di funzionalità Beta. Abilitare il flag selezionando la casella di controllo in Abilitato.
Eseguire di nuovo l'applicazione. Verrà visualizzato il messaggio Beta nella console.
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.
- Accedere al portale di Azure e selezionare Gruppi di risorse.
- Nella casella Filtra per nome immettere il nome del gruppo di risorse.
- Nell'elenco dei risultati selezionare il nome del gruppo di risorse per visualizzare una panoramica.
- Selezionare Elimina gruppo di risorse.
- 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 di avvio rapido è stato creato un flag di funzionalità in Configurazione app, che è stato 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.
Per abilitare la funzione di gestione delle funzionalità per altri tipi di app, continuare con le esercitazioni seguenti.
Per il rundown completo della funzionalità della libreria di gestione delle funzionalità .NET, continuare con il documento seguente.