Démarrage rapide : Créer votre première fonction dans Azure à l’aide de Visual StudioQuickstart: Create your first function in Azure using Visual Studio

Dans cet article, vous utilisez Visual Studio pour créer une fonction basée sur une bibliothèque de classes C# qui répond aux demandes HTTP.In this article, you use Visual Studio to create a C# class library-based function that responds to HTTP requests. Après avoir testé le code localement, vous le déployez dans l’environnement serverless d’Azure Functions.After testing the code locally, you deploy it to the serverless environment of Azure Functions.

Le fait de suivre ce guide de démarrage rapide entraîne une petite dépense de quelques cents USD tout au plus dans votre compte Azure.Completing this quickstart incurs a small cost of a few USD cents or less in your Azure account.

PrérequisPrerequisites

Pour suivre ce tutoriel, commencez par installer Visual Studio 2019.To complete this tutorial, first install Visual Studio 2019. Assurez-vous de sélectionner la charge de travail Développement Azure lors de l’installation.Ensure you select the Azure development workload during installation. Si vous préférez créer un projet Azure Functions avec Visual Studio 2017, vous devez commencer par installer les tout derniers outils Azure Functions.If you want to create an Azure Functions project by using Visual Studio 2017 instead, you must first install the latest Azure Functions tools.

Installez Visual Studio avec la charge de travail de développement Azure.

Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.If you don't have an Azure subscription, create a free account before you begin.

Créer un projet d’application de fonctionCreate a function app project

Le modèle de projet Azure Functions dans Visual Studio crée un projet que vous pouvez publier dans une application de fonction dans Azure.The Azure Functions project template in Visual Studio creates a project that you can publish to a function app in Azure. Vous pouvez utiliser une application de fonction pour regrouper des fonctions en une unité logique afin de faciliter la gestion, le déploiement, la mise à l’échelle et le partage des ressources.You can use a function app to group functions as a logical unit for easier management, deployment, scaling, and sharing of resources.

  1. Dans le menu de Visual Studio, sélectionnez Fichier > Nouveau > Projet.From the Visual Studio menu, select File > New > Project.

  2. Dans Créer un projet, entrez functions dans la zone de recherche, choisissez le modèle Azure Functions, puis sélectionnez Suivant.In Create a new project, enter functions in the search box, choose the Azure Functions template, and then select Next.

  3. Dans Configurer votre nouveau projet, entrez un Nom de projet, puis sélectionnez Créer.In Configure your new project, enter a Project name for your project, and then select Create. Le nom d’application de la fonction doit être valide en tant qu’espace de noms C#, afin de ne pas utiliser des traits d’union, des traits de soulignement ou d’autres caractères non alphanumériques.The function app name must be valid as a C# namespace, so don't use underscores, hyphens, or any other nonalphanumeric characters.

  4. Pour les paramètres Créer une application Azure Functions, utilisez les valeurs du tableau suivant :For the Create a new Azure Functions application settings, use the values in the following table:

    ParamètreSetting ValeurValue DescriptionDescription
    Runtime FunctionsFunctions runtime Azure Functions v3
    (.NET Core)
    Azure Functions v3
    (.NET Core)
    Cette valeur crée un projet de fonction qui utilise la version 3.x du runtime Azure Functions, qui prend en charge .NET Core 3.x.This value creates a function project that uses the version 3.x runtime of Azure Functions, which supports .NET Core 3.x. La version 1.x d’Azure Functions prend en charge .NET Framework.Azure Functions 1.x supports the .NET Framework. Pour plus d’informations, consultez Vue d’ensemble des versions du runtime Azure Functions.For more information, see Azure Functions runtime versions overview.
    Modèle de fonctionFunction template Déclencheur HTTPHTTP trigger Cette valeur crée une fonction déclenchée par une requête HTTP.This value creates a function triggered by an HTTP request.
    Compte de stockage (AzureWebJobsStorage)Storage account (AzureWebJobsStorage) Émulateur de stockageStorage emulator Étant donné qu’une fonction Azure nécessite un compte de stockage, celui-ci est attribué ou créé quand vous publiez votre projet sur Azure.Because an Azure Function requires a storage account, one is assigned or created when you publish your project to Azure. Un déclencheur HTTP n’utilise pas de chaîne de connexion de compte Stockage Azure ; tous les autres types de déclencheurs nécessitent une chaîne de connexion de compte Stockage Azure valide.An HTTP trigger doesn't use an Azure Storage account connection string; all other trigger types require a valid Azure Storage account connection string.
    Niveau d’autorisationAuthorization level AnonymeAnonymous La fonction créée peut être déclenchée par n’importe quel client sans fournir une clé.The created function can be triggered by any client without providing a key. Ce paramètre d’autorisation facilite le test de votre nouvelle fonction.This authorization setting makes it easy to test your new function. Pour plus d’informations sur les clés et autorisations, consultez Clés d’autorisation et Liaisons HTTP et webhook.For more information about keys and authorization, see Authorization keys and HTTP and webhook bindings.

    Paramètres de projet Azure Functions

    Veillez à définir le Niveau d’autorisation sur Anonyme.Make sure you set the Authorization level to Anonymous. Si vous choisissez le niveau par défaut Fonction, vous êtes invité à présenter la clé de fonction dans les requêtes d’accès à votre point de terminaison de fonction.If you choose the default level of Function, you're required to present the function key in requests to access your function endpoint.

  5. Sélectionnez Créer pour créer le projet de fonction et la fonction de déclencheur HTTP.Select Create to create the function project and HTTP trigger function.

Visual Studio crée un projet et une classe qui contient un code réutilisable pour le type de fonction de déclencheur HTTP.Visual Studio creates a project and class that contains boilerplate code for the HTTP trigger function type. Le code réutilisable envoie une réponse HTTP qui inclut une valeur de la chaîne de requête ou du corps de requête.The boilerplate code sends an HTTP response that includes a value from the request body or query string. L’attribut HttpTrigger spécifie que l’exécution de la fonction est déclenchée par une requête HTTP.The HttpTrigger attribute specifies that the function is triggered by an HTTP request.

Renommer la fonctionRename the function

L’attribut de méthode FunctionName définit le nom de la fonction qui, par défaut, est Function1.The FunctionName method attribute sets the name of the function, which by default is generated as Function1. Comme les outils ne vous permettent pas de remplacer le nom de fonction par défaut quand vous créez votre projet, prenez une minute pour attribuer un nom plus approprié à la classe de fonction, au fichier et aux métadonnées.Since the tooling doesn't let you override the default function name when you create your project, take a minute to create a better name for the function class, file, and metadata.

  1. Dans l’Explorateur de fichiers, cliquez avec le bouton droit sur le fichier Function1.cs et renommez-le HttpExample.cs.In File Explorer, right-click the Function1.cs file and rename it to HttpExample.cs.

  2. Dans le code, renommez la classe Function1 en « HttpExample ».In the code, rename the Function1 class to `HttpExample'.

  3. Dans la méthode HttpTrigger nommée Run, renommez l’attribut de méthode FunctionName en HttpExample.In the HttpTrigger method named Run, rename the FunctionName method attribute to HttpExample.

Maintenant que vous avez renommé la fonction, vous pouvez la tester sur votre ordinateur local.Now that you've renamed the function, you can test it on your local computer.

Exécuter la fonction localementRun the function locally

Visual Studio s’intègre à Azure Functions Core Tools pour vous permettre de tester vos fonctions en local avec le runtime Azure Functions complet.Visual Studio integrates with Azure Functions Core Tools so that you can test your functions locally using the full Azure Functions runtime.

  1. Pour exécuter votre fonction, appuyez sur F5 dans Visual Studio.To run your function, press F5 in Visual Studio. Vous devez peut-être activer une exception de pare-feu afin de permettre aux outils de prendre en charge les requêtes HTTP.You might need to enable a firewall exception so that the tools can handle HTTP requests. Les niveaux d’autorisation ne sont jamais appliqués quand vous exécutez une fonction localement.Authorization levels are never enforced when you run a function locally.

  2. Copiez l’URL de votre fonction à partir de la sortie runtime Azure Functions.Copy the URL of your function from the Azure Functions runtime output.

    Azure runtime local

  3. Collez l’URL de la demande HTTP dans la barre d’adresses de votre navigateur.Paste the URL for the HTTP request into your browser's address bar. Ajoutez la chaîne de requête ?name=<YOUR_NAME> à cette URL et exécutez la demande.Append the query string ?name=<YOUR_NAME> to this URL and run the request. L’image suivante montre dans le navigateur la réponse de la fonction à la requête GET locale :The following image shows the response in the browser to the local GET request returned by the function:

    Réponse de la fonction localhost dans le navigateur

  4. Pour arrêter le débogage, appuyez sur Maj+F5 dans Visual Studio.To stop debugging, press Shift+F5 in Visual Studio.

Après avoir vérifié que la fonction s’exécute correctement sur votre ordinateur local, il est temps de publier le projet sur Azure.After you've verified that the function runs correctly on your local computer, it's time to publish the project to Azure.

Publication du projet sur AzurePublish the project to Azure

Avant de pouvoir publier votre projet, vous devez disposer d’une application de fonction dans votre abonnement Azure.Before you can publish your project, you must have a function app in your Azure subscription. La publication Visual Studio crée une application de fonction pour vous la première fois que vous publiez votre projet.Visual Studio publishing creates a function app for you the first time you publish your project.

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet, puis sélectionnez Publier.In Solution Explorer, right-click the project and select Publish.

  2. Dans Choisir une cible de publication, utilisez les options de publication spécifiées dans le tableau suivant :In Pick a publish target, use the publish options specified in the following table:

    OptionOption DescriptionDescription
    Plan de consommation Azure FunctionsAzure Functions Consumption Plan Créez une application de fonction dans un environnement cloud Azure qui s’exécute dans un plan de consommation.Create a function app in an Azure cloud environment that runs in a Consumption plan. Quand vous utilisez un plan de consommation, vous payez seulement pour les exécutions de votre application de fonction.When you use a Consumption plan, you pay only for executions of your functions app. D’autres plans d’hébergement occasionnent des coûts plus élevés.Other hosting plans incur higher costs. Si vous exécutez un plan autre que le plan de consommation, vous devez gérer la mise à l’échelle de votre application de fonction.If you run in a plan other than a Consumption plan, you must manage the scaling of your function app.
    CréerCreate New Une nouvelle application de fonction, avec les ressources associées, est créée dans Azure.A new function app, with related resources, is created in Azure.
    Si vous choisissez Sélectionner existant, tous les fichiers de l’application de fonction existante dans Azure sont remplacés par les fichiers du projet local.If you choose Select Existing, all files in the existing function app in Azure are overwritten by files from the local project. Utilisez cette option uniquement quand vous republiez des mises à jour d’une application de fonction existante.Use this option only when you republish updates to an existing function app.
    Exécuter à partir d’un fichier de packageRun from package file Votre application de fonction est déployée en utilisant Zip Deploy avec le mode Exécuter à partir du fichier de package activé.Your function app is deployed using Zip Deploy with Run-From-Package mode enabled. Ce déploiement, qui offre de meilleures performances, constitue la méthode recommandée pour exécuter vos fonctions.This deployment, which results in better performance, is the recommended way of running your functions.
    Si vous n’utilisez pas cette option, veillez à ce que votre projet d’application de fonction ne s’exécute pas localement avant de publier sur Azure.If you don't use this option, make sure to stop your function app project from running locally before you publish to Azure.

    Créer un profil de publication

  3. Sélectionnez Créer un profil.Select Create Profile. Si vous ne vous êtes pas encore connecté à votre compte Azure à partir de Visual Studio, sélectionnez Connexion.If you haven't already signed-in to your Azure account from Visual Studio, select Sign-in. Vous pouvez également créer un compte Azure gratuit.You can also create a free Azure account.

  4. Dans App Service : Créer, utilisez les valeurs spécifiées dans le tableau suivant :In App Service: Create new, use the values specified in the following table:

    ParamètreSetting ValeurValue DescriptionDescription
    NomName Nom globalement uniqueGlobally unique name Nom qui identifie uniquement votre nouvelle application de fonction.Name that uniquely identifies your new function app. Acceptez ce nom ou entrez un nouveau nom.Accept this name or enter a new name. Les caractères valides sont a-z, 0-9 et -.Valid characters are: a-z, 0-9, and -.
    AbonnementSubscription Votre abonnementYour subscription Sélectionnez l’abonnement Azure à utiliser.The Azure subscription to use. Acceptez cet abonnement ou sélectionnez-en un nouveau dans la liste déroulante.Accept this subscription or select a new one from the drop-down list.
    Groupe de ressourcesResource group Nom de votre groupe de ressourcesName of your resource group Groupe de ressources dans lequel créer votre application de fonction.The resource group in which to create your function app. Sélectionnez un groupe de ressources existant dans la liste déroulante, ou choisissez Créer pour créer un groupe de ressources.Select an existing resource group from the drop-down list or choose New to create a new resource group.
    Plan d’hébergementHosting Plan Nom de votre plan d’hébergementName of your hosting plan Sélectionnez Nouveau pour configurer un plan serverless.Select New to configure a serverless plan. Veillez à choisir la Consommation sous Taille.Make sure to choose the Consumption under Size. Quand vous publiez votre projet dans une application de fonction qui s’exécute dans un Plan Consommation, vous payez uniquement pour les exécutions de votre application de fonction.When you publish your project to a function app that runs in a Consumption plan, you pay only for executions of your functions app. D’autres plans d’hébergement occasionnent des coûts plus élevés.Other hosting plans incur higher costs. Si vous exécutez un plan autre que le plan Consommation, vous devez gérer la mise à l’échelle de votre application de fonction.If you run in a plan other than Consumption, you must manage the scaling of your function app.
    LieuLocation Emplacement du service d’applicationLocation of the app service Choisissez un Emplacement dans une région proche de chez vous, ou proche d’autres services auxquels vos fonctions ont accès.Choose a Location in a region near you or other services your functions access.
    Stockage AzureAzure Storage Compte de stockage à usage généralGeneral-purpose storage account Le runtime Functions exige un compte Stockage Azure.An Azure Storage account is required by the Functions runtime. Sélectionnez Nouveau pour configurer un compte de stockage universel.Select New to configure a general-purpose storage account. Vous pouvez également choisir un compte existant qui répond aux exigences relatives aux comptes de stockage.You can also choose an existing account that meets the storage account requirements.

    Boîte de dialogue Créer App Service

  5. Sélectionnez Créer pour créer une application de fonction et ses ressources associées dans Azure avec ces paramètres et déployer votre code de projet de fonction.Select Create to create a function app and its related resources in Azure with these settings and deploy your function project code.

  6. Sélectionnez Publier et attendez que le déploiement se termine.Select Publish and wait for the deployment to complete.

    Une fois le déploiement terminé, l’URL racine de l’application de fonction dans Azure est affichée sous l’onglet Publier.After the deployment completes the root URL of the function app in Azure is shown in the Publish tab.

  7. Sous l’onglet Publier, choisissez Gérer dans Cloud Explorer.In the Publish tab, choose Manage in Cloud Explorer. La nouvelle ressource Azure d’application de fonction est alors ouverte dans Cloud Explorer.This opens the new function app Azure resource in Cloud Explorer.

    Publier un message de réussite

    Cloud Explorer vous permet d’utiliser Visual Studio pour afficher le contenu du site, démarrer et arrêter l’application de fonction, et accéder directement aux ressources de l’application de fonction sur Azure et dans le portail Azure.Cloud Explorer lets you use Visual Studio to view the contents of the site, start and stop the function app, and browse directly to function app resources on Azure and in the Azure portal.

Tester votre fonction dans AzureTest your function in Azure

  1. Dans Cloud Explorer, votre nouvelle application de fonction doit être sélectionnée.In Cloud Explorer, your new function app should be selected. Si ce n’est pas le cas, développez votre abonnement > App Services, puis sélectionnez votre nouvelle application de fonction.If not, expand your subscription > App Services, and select your new function app.

  2. Cliquez avec le bouton droit sur l’application de fonction et choisissez Ouvrir dans le navigateur.Right-click the function app and choose Open in Browser. Cela ouvre la racine de votre application de fonction dans votre navigateur web par défaut et affiche la page qui indique que votre application de fonction est en cours d’exécution.This opens the root of your function app in your default web browser and displays the page that indicates your function app is running.

    Application de fonction en cours d’exécution

  3. Dans la barre d’adresses du navigateur, ajoutez la chaîne /api/HttpExample?name=Functions à l’URL de base et exécutez la demande.In the address bar in the browser, append the string /api/HttpExample?name=Functions to the base URL and run the request.

    L’URL qui appelle la fonction à déclencheur HTTP est au format suivant :The URL that calls your HTTP trigger function is in the following format:

    http://<APP_NAME>.azurewebsites.net/api/HttpExample?name=Functions

  4. Accédez à cette URL pour voir dans le navigateur une réponse à la demande GET distante retournée par la fonction, qui ressemble à l’exemple suivant :Go to this URL and you see a response in the browser to the remote GET request returned by the function, which looks like the following example:

    Réponse de la fonction dans le navigateur

Nettoyer les ressourcesClean up resources

Les autres démarrages rapides de cette collection reposent sur ce démarrage rapide.Other quickstarts in this collection build upon this quickstart. Si vous envisagez d’utiliser d’autres guides de démarrage rapide, tutoriels ou l’un des services que vous avez créés dans ce guide de démarrage rapide, ne supprimez pas les ressources.If you plan to work with subsequent quickstarts, tutorials, or with any of the services you have created in this quickstart, do not clean up the resources.

Ressources dans Azure fait référence aux applications de fonction, fonctions, comptes de stockage, et ainsi de suite.Resources in Azure refer to function apps, functions, storage accounts, and so forth. Elles sont rassemblées en groupes de ressources, et vous pouvez supprimer tous les éléments d’un groupe en supprimant le groupe.They're grouped into resource groups, and you can delete everything in a group by deleting the group.

Vous avez créé des ressources pour effectuer ces démarrages rapides.You created resources to complete these quickstarts. Vous pouvez être facturé pour ces ressources, en fonction de l’état de votre compte et de la tarification du service.You may be billed for these resources, depending on your account status and service pricing. Si vous n’avez plus besoin des ressources, voici comment les supprimer :If you don't need the resources anymore, here's how to delete them:

  1. Dans Cloud Explorer, développez votre abonnement > App Services, cliquez avec le bouton droit sur votre application de fonction et choisissez Ouvrir dans le portail.In the Cloud Explorer, expand your subscription > App Services, right-click your function app, and choose Open in Portal.

  2. Dans la page de l’application de fonction, sélectionnez l’onglet Vue d’ensemble, puis le lien sous Groupe de ressources.In the function app page, select the Overview tab and then select the link under Resource group.

    Sélectionner le groupe de ressources à supprimer dans la page de l’application de fonction

  3. Dans la page Groupe de ressources, passez en revue la liste des ressources incluses et vérifiez qu’elles correspondent à celles que vous souhaitez supprimer.In the Resource group page, review the list of included resources, and verify that they're the ones you want to delete.

  4. Sélectionnez Supprimer le groupe de ressources et suivez les instructions.Select Delete resource group, and follow the instructions.

    Cette opération peut prendre quelques minutes.Deletion may take a couple of minutes. Une fois terminée, une notification s’affiche pendant quelques secondes.When it's done, a notification appears for a few seconds. Vous pouvez également sélectionner l’icône représentant une cloche en haut de la page pour afficher la notification.You can also select the bell icon at the top of the page to view the notification.

Étapes suivantesNext steps

Dans ce guide de démarrage rapide, vous avez utilisé Visual Studio pour créer et publier une application de fonction C# dans Azure à l’aide d’une simple fonction à déclencheur HTTP.In this quickstart, you used Visual Studio to create and publish a C# function app in Azure with a simple HTTP trigger function.

Passez à l’article suivant pour savoir comment ajouter une liaison de file d’attente de stockage Azure à votre fonction :Advance to the next article to learn how to add an Azure Storage queue binding to your function: