Delen via


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.

Het voltooien van deze snelle start brengt kosten met zich mee van een paar dollarcent of minder, die in rekening worden gebracht op 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

Een functie-app-project 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.

  1. Selecteer in het Visual Studio-menu Bestand>Nieuw>Project.

  2. Voer in Een nieuw project makenfuncties in het zoekvenster in, kies de sjabloon Azure Functions en selecteer vervolgens Volgende.

  3. In Configureer je nieuwe project, voer een projectnaam in voor je project en selecteer vervolgens Volgende. De functie-appnaam moet geldig zijn als een C#-naamruimte. Gebruik dus geen onderstrepingstekens, afbreekstreepjes of andere niet-alfanumerieke tekens.

  4. Voor de overige instellingen voor aanvullende informatie ,

    Instelling Waarde 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.
    Autorisatieniveau 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.

    Schermopname van azure Functions-projectinstellingen.

    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.

  5. Selecteer Aanmaken om het functieproject en de HTTP-triggerfunctie 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.

  1. Klik in Verkenner met de rechtermuisknop op het bestand Function1.cs, en wijzig de naam in HttpExample.cs.

  2. Wijzig in de code de naam van de klasse Function1 in HttpExample.

  3. Wijzig in de benoemde Runmethode de naam van het Function methodekenmerk in HttpExample.

Uw functiedefinitie moet er nu uitzien als de volgende code:

[Function("HttpExample")]
public IActionResult Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequest req)
{
    _logger. LogInformation("C# HTTP trigger function processed a request.");
    return new OkObjectResult("Hello, 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.

  1. 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.

  2. Kopieer de URL van uw functie vanuit de uitvoer van de Azure Functions-runtime.

    Azure lokale uitvoeringsomgeving

  3. 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:

    De reactie van de lokale host van de functie in de browser

  4. 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, kan Visual Studio u helpen er een te maken voordat u uw project publiceert. In dit artikel maakt u een functie-app die wordt uitgevoerd op Linux in een Flex Consumption-abonnement. Dit is het aanbevolen plan voor gebeurtenisgestuurde en beveiligde serverloze functies.

  1. Klik in Solution Explorer met de rechtermuisknop op het project en selecteer Publiceren. In Target selecteer je Azure en daarna Volgende.

  2. Selecteer bij Specifiek doelde Azure-functie-app en selecteer vervolgens Volgende.

  3. Selecteer nieuwe maken in het Functions-exemplaar.

    Schermopname die laat zien hoe een nieuw exemplaar van een functie-app wordt aangemaakt.

  4. Maak een nieuw exemplaar met behulp van de waarden die zijn opgegeven in de volgende tabel:

    Instelling Waarde 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 -.
    Abonnementsnaam Naam van 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.
    Abonnementstype Flexverbruik Wanneer u uw project publiceert naar een functie-app die wordt uitgevoerd in een Flex Consumption-abonnement, betaalt u mogelijk alleen voor uitvoeringen van uw functie-app. Andere hostingplannen kunnen hogere kosten met zich mee kunnen brengen.
    Besturingssysteem Linux Voor het Flex Consumption-abonnement is momenteel Linux vereist.
    Plaats Locatie van de app-service Selecteer een locatie in een Azure-regio die wordt ondersteund door het Flex Consumption-abonnement.
    Grootte van instantiegeheugen 2048 De geheugengrootte van de exemplaren van de virtuele machine waarin de app wordt uitgevoerd, wat uniek is voor het Flex Consumption-abonnement.
    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.

    Schermopname van het dialoogvenster App Service maken.

  5. Selecteer Maken om een functie-app en de bijbehorende resources te maken in Azure. De status van resourcecreatie wordt weergegeven in de linkerbenedenhoek van het venster.

  6. Selecteer Voltooienen selecteer vervolgens publiceren op het tabblad 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 .

  7. 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.

    Schermopname van het bericht Geslaagd publiceren.

Uw functie controleren in Azure

  1. In Azure Portal moet u op de pagina Overzicht voor uw nieuwe functions-app staan.

  2. Bij Functions selecteert u uw nieuwe functie genaamd HttpExample, selecteer dan op de functiepagina Functie-URL ophalen en daarna het pictogram Kopiëren naar klembord.

  3. Plak in de adresbalk in uw browser de URL die u 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

  4. 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:

    Functieantwoord in de browser

Middelen 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. Er kunnen kosten in rekening worden gebracht voor deze resources, afhankelijk van de status van uw account en de serviceprijzen. Andere Quick Starts in deze verzameling zijn op deze Quick Start gebaseerd. Als u van plan bent te werken aan volgende quickstarts, handleidingen of met een van de services die u in deze quickstart hebt gemaakt, moet u de resources niet verwijderen.

Gebruik de volgende stappen om de functie-app en de bijbehorende resources te verwijderen om verdere kosten te voorkomen.

  1. Selecteer In het dialoogvenster Publiceren van Visual Studio in de sectie Hosting de optie Openen in Azure Portal.

  2. Selecteer op de pagina Functie-app het tabblad Overzicht, en selecteer vervolgens de koppeling onder Resourcegroep.

    Selecteer op de pagina Functie-app de resourcegroep die u wilt verwijderen

  3. Bekijk op de pagina Resourcegroep de lijst met opgenomen resources, en controleer of dit de resources zijn die u wilt verwijderen.

  4. 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: