Snabbstart: Skapa en Azure Functions-app med Azure App Configuration
I den här snabbstarten införlivar du Azure App Configuration-tjänsten i en Azure Functions-app för att centralisera lagring och hantering av alla programinställningar separat från din kod.
Förutsättningar
- Azure-prenumeration – skapa en kostnadsfritt
- Visual Studio 2019 med arbetsbelastningen Azure Development.
- Azure Functions verktyg
Skapa en App Configuration butik
Om du vill skapa ett nytt konfigurations Arkiv för appen loggar du in på Azure Portal. I det övre vänstra hörnet på Start sidan väljer du skapa en resurs. I rutan Sök på Marketplace anger du app-konfiguration och väljer RETUR.

Välj app-konfiguration från Sök resultaten och välj sedan skapa.

I fönstret skapa app-konfiguration anger du följande inställningar:
Inställning Föreslaget värde Beskrivning Prenumeration Din prenumeration Välj den Azure-prenumeration du vill använda för att testa App Configuration. Om ditt konto bara har en prenumeration väljs den automatiskt och ingen prenumerations lista visas. Resursgrupp AppConfigTestResources Välj eller skapa en resurs grupp för din app Configuration Store-resurs. Den här gruppen är användbar för att organisera flera resurser som du kanske vill ta bort samtidigt genom att ta bort resurs gruppen. Mer information finns i använda resurs grupper för att hantera dina Azure-resurser. Resurs namn Globalt unikt namn Ange ett unikt resurs namn som ska användas för appens konfigurations Arkiv resurs. Namnet måste vara en sträng mellan 5 och 50 tecken och får bara innehålla siffror, bokstäver och -tecknet. Namnet får inte börja eller sluta med-specialtecknet.Plats USA, centrala Använd Plats till att ange den geografiska plats där appkonfigurationsarkivets resurs finns. För bästa prestanda skapar du resursen i samma region som andra komponenter i ditt program. Prisnivå Kostnadsfri Välj önskad pris nivå. Mer information finns på sidan med prissättning för app-konfiguration. Välj Granska + skapa för att validera inställningarna.
Välj Skapa. Distributionen kan ta några minuter.
När distributionen är klar går du till appen konfigurations resurs. Välj Inställningar > Åtkomstnycklar. Anteckna den primära skrivskyddade nyckel anslutnings strängen. Du kommer att använda den här anslutnings strängen senare för att konfigurera programmet för att kommunicera med det app-konfigurations lager som du har skapat.
Välj Configuration Explorer+ > Skapa > nyckelvärde för att lägga till följande nyckel/värde-par:
Tangent Värde TestApp:Settings:Message Data från Azure App Configuration Lämna Etikett och Innehållstyp tomma för tillfället.
Välj Använd.
Skapa en Functions-app
Den Azure Functions projektmallen i Visual Studio skapar ett C#-klassbiblioteksprojekt som du kan publicera till en funktionsapp i Azure. Du kan använda en funktionsapp för att gruppera funktioner som en logisk enhet för enklare hantering, distribution, skalning och delning av resurser.
I menyn Visual Studio väljer du Arkiv > Ny > Project.
I Skapa ett nytt projekt anger du funktioner i sökrutan, väljer mallen Azure Functions och väljer sedan Nästa.
I Konfigurera det nya projektet anger du Project namn för projektet och väljer sedan Skapa. Funktionsappens namn måste vara ett giltigt C#-namnområde. Du kan inte använda understreck, bindestreck eller andra icke-alfanumeriska tecken.
Använd värdena i Azure Functions tabell för Skapa ett nytt program:
Inställning Värde Beskrivning .NET-version .NET Core 3 (LTS) Det här värdet skapar ett funktionsprojekt som körs i process med version 3.x av Azure Functions-körningen. Azure Functions 1.x har stöd för .NET Framework. Mer information finns i Azure Functions översikt över körningsversioner. Funktionsmall HTTP-utlösare Det här värdet skapar en funktion som utlöses av en HTTP-begäran. Storage-konto (AzureWebJobsStorage) Storage emulator Eftersom en funktionsapp i Azure kräver ett lagringskonto tilldelas eller skapas ett när du publicerar projektet till Azure. En HTTP-utlösare använder inte en Azure Storage-kontoanslutningssträng; alla andra utlösartyper kräver en giltig Azure Storage-kontoanslutningssträng. Auktoriseringsnivå Anonym Funktionen som skapats kan utlösas av alla klienter utan att en nyckel anges. Den här auktoriseringsinställningen gör det enkelt att testa den nya funktionen. Mer information om nycklar och auktorisering finns i Auktoriseringsnycklar och HTTP- och webhookbindningar. 
Se till att du ställer in auktoriseringsnivån på Anonym. Om du väljer standardnivån funktion måste du presentera funktionsnyckeln i begäranden för att få åtkomst till funktionsslutpunkten.
Välj Skapa för att skapa funktionsprojektet och HTTP-utlösarfunktionen.
Anslut till en App Configuration butik
Det här projektet använder beroendeinjektion i .NET-Azure Functions lägger till Azure App Configuration som en extra konfigurationskälla.
Högerklicka på projektet och välj Hantera NuGet-paket. På fliken Bläddra söker du efter och lägger till följande NuGet-paket i projektet.
- Microsoft.Extensions.Configuration.AzureAppConfiguration version 4.1.0 eller senare
- Microsoft.Azure.Functions.Extensions version 1.1.0 eller senare
Lägg till en ny fil, Startup.cs, med följande kod. Den definierar en klass med
Startupnamnet som implementerarFunctionsStartupden abstrakta klassen. Ett sammansättningsattribut används för att ange typnamnet som används vid Azure Functions start.Metoden
ConfigureAppConfigurationåsidosätts och en Azure App Configuration läggs till som en extra konfigurationskälla genom att anropaAddAzureAppConfiguration(). MetodenConfigurelämnas tom eftersom du inte behöver registrera några tjänster i det här läget.using System; using Microsoft.Azure.Functions.Extensions.DependencyInjection; using Microsoft.Extensions.Configuration; [assembly: FunctionsStartup(typeof(FunctionApp.Startup))] namespace FunctionApp { class Startup : FunctionsStartup { public override void ConfigureAppConfiguration(IFunctionsConfigurationBuilder builder) { string cs = Environment.GetEnvironmentVariable("ConnectionString"); builder.ConfigurationBuilder.AddAzureAppConfiguration(cs); } public override void Configure(IFunctionsHostBuilder builder) { } } }Öppna Function1.cs och lägg till följande namnområde.
using Microsoft.Extensions.Configuration;Lägg till en konstruktor som används för att hämta en instans av
IConfigurationvia beroendeinjektion.private readonly IConfiguration _configuration; public Function1(IConfiguration configuration) { _configuration = configuration; }Uppdatera metoden
Runför att läsa värden från konfigurationen.public async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req, ILogger log) { log.LogInformation("C# HTTP trigger function processed a request."); string keyName = "TestApp:Settings:Message"; string message = _configuration[keyName]; return message != null ? (ActionResult)new OkObjectResult(message) : new BadRequestObjectResult($"Please create a key-value with the key '{keyName}' in App Configuration."); }Anteckning
Klassen
Function1och metoden ska inte varaRunstatiska. Ta bortstaticmodifieraren om den genererades automatiskt.
Testa funktionen lokalt
Ange en miljövariabel med namnet ConnectionString och ställ in den på åtkomstnyckeln till App Configuration store. Om du använder Windows kommandotolken kör du följande kommando och startar om kommandotolken så att ändringen börjar gälla:
setx ConnectionString "connection-string-of-your-app-configuration-store"Om du använder Windows PowerShell kör du följande kommando:
$Env:ConnectionString = "connection-string-of-your-app-configuration-store"Om du använder macOS eller Linux kör du följande kommando:
export ConnectionString='connection-string-of-your-app-configuration-store'Tryck på F5 för att testa funktionen. Om du uppmanas till det godkänner du begäran från Visual Studio för att ladda ned Azure Functions Core-verktyg (CLI). Du kan också behöva aktivera ett brandväggsfel så att verktygen kan hantera HTTP-begäranden.
Kopiera URL:en för funktionen från dina Azure Functions-utdata.

Klistra in webbadressen för HTTP-begäran i webbläsarens adressfält. Följande bild visar svaret i webbläsaren på den lokala GET-begäran som returnerades av funktionen.

Rensa resurser
Om du inte vill fortsätta använda resurserna som skapats i den här artikeln tar du bort resurs gruppen som du skapade här för att undvika avgifter.
Viktigt
Att ta bort en resursgrupp kan inte ångras. Resurs gruppen och alla resurser i den tas bort permanent. Var noga så att du inte tar bort fel resursgrupp eller resurser av misstag. Om du har skapat resurserna för den här artikeln i en resurs grupp som innehåller andra resurser som du vill behålla, tar du bort varje resurs separat från dess respektive fönster i stället för att ta bort resurs gruppen.
- Logga in på Azure Portaloch välj resurs grupper.
- I rutan Filtrera efter namn anger du namnet på din resurs grupp.
- I listan resultat väljer du resurs gruppens namn för att se en översikt.
- Välj Ta bort resursgrupp.
- Du blir ombedd att bekräfta borttagningen av resursgruppen. Ange namnet på resurs gruppen som ska bekräftas och välj ta bort.
Efter en liten stund tas resurs gruppen och alla dess resurser bort.
Nästa steg
I den här snabbstarten skapade du ett nytt App Configuration store och använde det med en Azure Functions-app via App Configuration providern. Om du vill lära dig hur du uppdaterar Azure Functions för att uppdatera konfigurationen dynamiskt fortsätter du till nästa självstudie.
