Quickstart: Uw eerste C#-functie maken in Azure met behulp van Visual Studio
Met Azure Functions kunt u Visual Studio gebruiken om lokale C#-functieprojecten te maken en dit project vervolgens eenvoudig te publiceren om te worden uitgevoerd in een schaalbare serverloze omgeving in Azure. Als u uw C#-apps liever lokaal ontwikkelt met Visual Studio Code, moet u in plaats daarvan de visual Studio Code-versie van dit artikel overwegen.
In dit artikel wordt standaard beschreven hoe u C#-functies maakt die worden uitgevoerd op .NET 8 in een geïsoleerd werkproces. Functie-apps die worden uitgevoerd in een geïsoleerd werkproces, worden ondersteund in alle versies van .NET die worden ondersteund door Functions. Zie Ondersteunde versies voor meer informatie.
In dit artikel leert u het volgende:
- Visual Studio gebruiken om een C#-klassebibliotheekproject te maken.
- Maak een functie die reageert op HTTP-aanvragen.
- Voer uw code lokaal uit om het gedrag van de functie te controleren.
- Implementeer uw codeproject in Azure Functions.
Voor het voltooien van deze quickstart worden kosten van een paar dollarcent of minder in rekening gebracht bij uw Azure-account.
In deze video ziet u hoe u een C#-functie maakt in Azure.
De stappen in de video worden ook beschreven in de volgende secties.
Vereisten
Visual Studio 2022. Zorg ervoor dat u de Azure-ontwikkelworkload selecteert tijdens de installatie.
Azure-abonnement. Als u nog geen account hebt, maakt u een gratis account voordat u begint.
Een functie-appproject maken
Met de Azure Functions-projectsjabloon in Visual Studio maakt u een C#-klassebibliotheekproject dat u kunt publiceren naar een functie-app in Azure. U kunt een functie-app gebruiken om functies te groeperen in een logische eenheid, zodat u resources eenvoudiger kunt beheren, implementeren, schalen en delen.
Selecteer in Visual Studio-menu Bestand>Nieuw>Project.
Voer in Een nieuw project maken functies in het zoekvenster in, kies de sjabloon Azure Functions en selecteer vervolgens Volgende.
Voer in Het nieuwe project configureren een projectnaam voor uw project in en selecteer vervolgens Volgende. De functie-appnaam moet geldig zijn als een C#-naamruimte. Gebruik dus geen onderstrepingstekens, afbreekstreepjes of andere niet-alfanumerieke tekens.
Voor de overige instellingen voor aanvullende informatie ,
Instelling Weergegeven als Beschrijving Functions-werkrol .NET 8.0 Geïsoleerde (langetermijnondersteuning) Uw functies worden uitgevoerd op .NET 8 in een geïsoleerd werkproces. Functie HTTP-trigger Met deze waarde wordt er een functie gemaakt die wordt geactiveerd door een HTTP-aanvraag. Azurite gebruiken voor runtime-opslagaccount (AzureWebJobsStorage) Inschakelen Omdat een functie-app in Azure een opslagaccount vereist, wordt er een toegewezen of gemaakt wanneer u uw project publiceert naar Azure. Een HTTP-trigger gebruikt geen Azure Storage-accountverbindingsreeks. Alle andere triggers vereisen een geldige Azure Storage-accountverbindingsreeks. Wanneer u deze optie selecteert, wordt de Azurite-emulator gebruikt. Verificatieniveau Anoniem De gemaakte functie kan door iedere client worden geactiveerd zonder een sleutel op te geven. Met deze autorisatie-instelling kunt u eenvoudig uw nieuwe functie testen. Zie Autorisatieniveau voor meer informatie. Zorg ervoor dat u het Autorisatieniveau instelt op Anoniem. Als u het standaardniveau van de functie kiest, moet u de functiesleutel presenteren in aanvragen voor toegang tot uw functie-eindpunt in Azure.
Selecteer OK om het functieproject en de door HTTP geactiveerde functie te maken.
Visual Studio maakt een project en klasse die standaardcode voor het type HTTP-triggerfunctie bevat. De standaardcode verzendt een HTTP-reactie met een waarde uit de hoofdtekst van de aanvraag of uit de query-tekenreeks. Met het kenmerk HttpTrigger
wordt aangegeven dat de functie wordt geactiveerd door een HTTP-aanvraag.
De naam van de functie wijzigen
Met het kenmerk van de Function
-methode wordt de naam van de functie ingesteld. Deze wordt standaard gegenereerd als Function1
. Aangezien het hulpprogramma u niet toestaat de standaardnaam van de functie te wijzigen wanneer u het project maakt, raden we u aan even de tijd te nemen om een betere naam te maken voor de functieklasse, het bestand en de metagegevens.
Klik in Verkenner met de rechtermuisknop op het bestand Function1.cs, en wijzig de naam in
HttpExample.cs
.Wijzig in de code de naam van de klasse Function1 in
HttpExample
.Wijzig in de benoemde
Run
methode de naam van hetFunction
methodekenmerk inHttpExample
.
Uw functiedefinitie moet er nu uitzien als de volgende code:
[Function("HttpExample")]
public IActionResult Run([HttpTrigger(AuthorizationLevel.AuthLevelValue, "get", "post")] HttpRequest req)
{
return new OkObjectResult("Welcome to Azure Functions!");
}
Nu u de naam van de functie hebt gewijzigd, kunt u deze testen op de lokale computer.
De functie lokaal uitvoeren
Visual Studio kan worden geïntegreerd met Azure Functions Core Tools zodat u uw functies lokaal kunt testen met behulp van de volledige Azure Functions-runtime.
Druk op F5 in Visual Studio om uw functie uit te voeren. Mogelijk moet u ook een firewall-uitzondering maken, zodat de hulpprogramma's HTTP-aanvragen kunnen afhandelen. Er worden geen autorisatieniveaus afgedwongen wanneer u een functie lokaal uitvoert.
Kopieer de URL van uw functie vanuit de uitvoer van de Azure Functions-runtime.
Plak de URL voor de HTTP-aanvraag in de adresbalk van uw browser en voer de aanvraag uit. In de afbeelding hieronder ziet u de reactie in de browser op de lokale GET-aanvraag die door de functie wordt geretourneerd:
Als u de foutopsporing wilt stoppen, drukt u op Shift+F5 in Visual Studio.
Nadat u hebt gecontroleerd of de functie correct wordt uitgevoerd op uw lokale computer, is het tijd om het project te publiceren in Azure.
Het project naar Azure publiceren
Visual Studio kan uw lokale project publiceren naar Azure. Voordat u uw project kunt publiceren, moet u een functie-app in uw Azure-abonnement hebben. Als u nog geen functie-app in Azure hebt, maakt Visual Studio-publicatie er een voor u de eerste keer dat u uw project publiceert. In dit artikel maakt u een functie-app en gerelateerde Azure-resources.
Klik in Solution Explorer met de rechtermuisknop op het project en selecteer Publiceren. Selecteer Azure in Target en selecteer vervolgens Volgende.
Selecteer voor een specifiek doel de Azure-functie-app (Windows). Er wordt een functie-app gemaakt die wordt uitgevoerd in Windows. Selecteer Volgende.
Selecteer in het Functions-exemplaar een nieuwe Azure-functie maken.
Maak een nieuw exemplaar met behulp van de waarden die zijn opgegeven in de volgende tabel:
Instelling Weergegeven als Beschrijving Naam Wereldwijd unieke naam Naam waarmee uw nieuwe functie-app uniek wordt aangeduid. Accepteer deze naam of voer een nieuwe in. Geldige tekens zijn a-z
,0-9
en-
.Abonnement Uw abonnement Het te gebruiken Azure-abonnement. Accepteer dit abonnement of selecteer een nieuw abonnement in de vervolgkeuzelijst. Resourcegroep Naam van uw resourcegroep De resourcegroep waarin u uw functie-app wilt maken. Selecteer Nieuw om een nieuwe resourcegroep te maken. U kunt er ook voor kiezen om een bestaande resourcegroep te gebruiken in de vervolgkeuzelijst. Abonnemtsype Verbruik Wanneer u uw project publiceert in een functie-app die wordt uitgevoerd in een verbruiksabonnement, betaalt u alleen voor uitvoeringen van uw functie-app. Andere hostingabonnement kosten meer. Location Locatie van de app-service Selecteer een locatie in een Azure-regio bij u in de buurt of andere services waartoe uw functies toegang hebben. Azure Storage Storage-account voor algemeen gebruik Er is een Azure-opslagaccount vereist voor de Functions-runtime. Selecteer Nieuw om een algemeen opslagaccount te configureren. U kunt er ook voor kiezen om een bestaand account te gebruiken dat voldoet aan de vereisten voor het opslagaccount. Application Insights Application Insights-exemplaar Schakel Azure-toepassing Insights-integratie in voor uw functie-app. Selecteer Nieuw om een nieuw exemplaar te maken, in een nieuwe of in een bestaande Log Analytics-werkruimte. U kunt er ook voor kiezen om een bestaand exemplaar te gebruiken. Selecteer Maken om een functie-app en de bijbehorende resources te maken in Azure. De status van het maken van resources wordt weergegeven in de linkerbenedenhoek van het venster.
Zorg ervoor dat in het Functions-exemplaar het selectievakje Uitvoeren vanuit pakketbestand is ingeschakeld. Uw functie-app wordt geïmplementeerd met behulp van Zip Deploy met de modus Uitvoeren vanaf-pakket ingeschakeld. Zip Deploy is de aanbevolen implementatiemethode voor uw functions-project voor betere prestaties.
Selecteer Voltooien en selecteer publiceren in het deelvenster Publiceren om het pakket te implementeren dat uw projectbestanden bevat in uw nieuwe functie-app in Azure.
Wanneer de implementatie is voltooid, wordt de hoofd-URL van de functie-app in Azure weergegeven op het tabblad Publiceren .
Selecteer Openen in Azure Portal op het tabblad Publiceren in de sectie Hosting. De Azure-resource voor de nieuwe functie-app wordt geopend in Azure Portal.
Uw functie controleren in Azure
In Azure Portal moet u op de pagina Overzicht voor uw nieuwe functions-app staan.
Selecteer onder Functions uw nieuwe functie met de naam HttpExample, selecteer vervolgens op de functiepagina functie-URL ophalen en vervolgens het pictogram Kopiëren naar klembord.
Plak in de adresbalk in uw browser de URL die u zojuist hebt gekopieerd en voer de aanvraag uit.
De URL die uw HTTP-triggerfunctie aanroept, heeft de volgende indeling:
https://<APP_NAME>.azurewebsites.net/api/HttpExample?name=Functions
Ga naar deze URL. U ziet nu in de browser een antwoord op de externe GET-aanvraag dat is geretourneerd met de functie. Dit ziet er ongeveer als volgt uit:
Resources opschonen
Resources verwijst in Azure naar functie-apps, functies, opslagaccounts,enzovoort. Deze zijn gegroepeerd in resourcegroepen. U kunt alle resources in een groep verwijderen door de groep zelf te verwijderen.
U hebt Azure-resources gemaakt om deze quickstart te voltooien. Deze resources kunnen bij u in rekening worden gebracht, afhankelijk van de accountstatus en serviceprijzen. Andere Quick Starts in deze verzameling zijn op deze Quick Start gebaseerd. Als u van plan bent om te werken met volgende quickstarts, zelfstudies of met een van de services die u in deze quickstart hebt gemaakt, moet u de resources niet opschonen.
Gebruik de volgende stappen om de functie-app en de bijbehorende resources te verwijderen om verdere kosten te voorkomen.
Selecteer In het dialoogvenster Publiceren van Visual Studio in de sectie Hosting de optie Openen in Azure Portal.
Selecteer op de pagina Functie-app het tabblad Overzicht, en selecteer vervolgens de koppeling onder Resourcegroep.
Bekijk op de pagina Resourcegroep de lijst met opgenomen resources, en controleer of dit de resources zijn die u wilt verwijderen.
Selecteer Resourcegroep verwijderen en volg de instructies.
Verwijderen kan enkele minuten duren. Wanneer dit is voltooid, verschijnt een aantal seconden een melding in beeld. U kunt ook het belpictogram bovenaan de pagina selecteren om de melding te bekijken.
Volgende stappen
In deze quickstart hebt u Visual Studio gebruikt om in Azure een C#-functie-app met een eenvoudige HTTP-triggerfunctie te maken en te publiceren.
Zie de handleiding voor het uitvoeren van C# Azure Functions in een geïsoleerd werkproces voor meer informatie over het werken met C#-functies die worden uitgevoerd in een geïsoleerd werkproces. Bekijk ondersteunde versies van .NET om andere versies van ondersteunde .NET-versies te bekijken in een geïsoleerd werkproces.
Ga naar het volgende artikel voor informatie over het toevoegen van een Azure Storage-wachtrijbinding aan uw functie: