Démarrage rapide : Créer votre première fonction C# dans Azure à l’aide de Visual Studio

Azure Functions vous permet d’utiliser Visual Studio pour créer des projets de fonction C# locaux, puis de publier facilement ce projet pour s’exécuter dans un environnement serverless évolutif dans Azure. Si vous préférez développer vos applications C# localement à l’aide de Visual Studio Code, vous devez plutôt envisager la version Visual Studio basée sur le code de cet article.

Par défaut, cet article vous montre comment créer des fonctions C# qui s’exécutent sur .NET 8 dans un processus worker isolé. Les applications de fonction qui s’exécutent dans un processus de travail isolé sont prises en charge sur toutes les versions de .NET prises en charge par Functions. Pour plus d’informations, consultez Versions prises en charge.

Dans cet article, vous apprendrez comment :

  • Utiliser Visual Studio pour créer un projet de bibliothèque de classes C#.
  • Créer une fonction qui répond à des requêtes HTTP.
  • Exécuter votre code localement pour vérifier le comportement de la fonction.
  • Déployer votre projet de code sur 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.

Cette vidéo vous montre comment créer une fonction C# dans Azure.

Les étapes de la vidéo sont également décrites dans les sections suivantes.

Prérequis

Créer un projet d’application de fonction

Le modèle de projet Azure Functions dans Visual Studio crée un projet de bibliothèque de classe C# que vous pouvez publier dans une application de fonction dans 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.

  1. Dans le menu de Visual Studio, sélectionnez Fichier>Nouveau>Projet.

  2. Dans Créer un projet, entrez functions dans la zone de recherche, choisissez le modèle Azure Functions, puis sélectionnez Suivant.

  3. Dans Configurer votre nouveau projet, entrez un Nom de projet, puis sélectionnez Suivant. 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.

  4. Pour les paramètres Informations supplémentaires restants,

    Paramètre valeur Description
    Worker Functions .NET 8.0 Isolé (Support à long terme) Vos fonctions s’exécutent sur .NET 8 dans un processus worker isolé.
    Fonction Déclencheur HTTP Cette valeur crée une fonction déclenchée par une requête HTTP.
    Utiliser Azurite pour le compte de _storage du runtime (AzureWebJobsStorage) Activer Étant donné qu’une application de fonction dans Azure nécessite un compte de stockage, celui-ci est attribué ou créé quand vous publiez votre projet sur 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. Lorsque vous sélectionnez cette option, l’émulateur Azurite est utilisé.
    Niveau d’autorisation Anonyme La fonction créée peut être déclenchée par n’importe quel client sans fournir une clé. Ce paramètre d’autorisation facilite le test de votre nouvelle fonction. Pour plus d’informations sur les clés et autorisations, consultez Clés d’autorisation et Liaisons HTTP et webhook.

    Screenshot of Azure Functions project settings.

    Veillez à définir le Niveau d’autorisation sur Anonyme. 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 dans Azure.

  5. Sélectionnez Créer pour créer le projet de fonction et la fonction de déclencheur HTTP.

Visual Studio crée un projet et une classe qui contient un code réutilisable pour le type de fonction de déclencheur HTTP. 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. L’attribut HttpTrigger spécifie que l’exécution de la fonction est déclenchée par une requête HTTP.

Renommer la fonction

L’attribut de méthode Function définit le nom de la fonction qui, par défaut, est 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.

  1. Dans l’Explorateur de fichiers, cliquez avec le bouton droit sur le fichier Function1.cs et renommez-le HttpExample.cs.

  2. Dans le code, renommez la classe Function1 en HttpExample.

  3. Dans la méthode nommée Run, renommez l’attribut de méthode Function en HttpExample.

Votre définition de fonction doit maintenant ressembler au code suivant :

[Function("HttpExample")]
public IActionResult Run([HttpTrigger(AuthorizationLevel.AuthLevelValue, "get", "post")] HttpRequest req)
{
    return new OkObjectResult("Welcome to Azure Functions!");
}

Maintenant que vous avez renommé la fonction, vous pouvez la tester sur votre ordinateur local.

Exécuter la fonction localement

Visual Studio s’intègre à Azure Functions Core Tools pour vous permettre de tester vos fonctions en local avec le runtime Azure Functions complet.

  1. Pour exécuter votre fonction, appuyez sur F5 dans 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. Les niveaux d’autorisation ne sont jamais appliqués quand vous exécutez une fonction localement.

  2. Copiez l’URL de votre fonction à partir de la sortie runtime Azure Functions.

    Azure local runtime

  3. Collez l’URL de la requête HTTP dans la barre d’adresse de votre navigateur, puis exécutez la requête. L’image suivante montre la réponse dans le navigateur à la requête GET locale retournée par la fonction :

    Function localhost response in the browser

  4. Pour arrêter le débogage, appuyez sur Maj+F5 dans 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.

Publication du projet sur Azure

Visual Studio permet de publier votre projet local sur Azure. Avant de pouvoir publier votre projet, vous devez disposer d’une application de fonction dans votre abonnement Azure. Si vous n'avez pas encore d'application de fonction dans Azure, Visual Studio en crée une pour vous la première fois que vous publiez votre projet. Dans cet article, vous créez une application de fonction et les ressources Azure associées.

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet, puis sélectionnez Publier. Dans Cible, sélectionnez Azure puis Suivant.

    Screenshot of publish window.

  2. Sélectionnez Azure Function App (Windows) pour la cible spécifique, qui crée une application de fonction qui s’exécute sur Windows, puis sélectionnez Suivant.

    Screenshot of publish window with specific target.

  3. Dans Instance de la fonction, choisissez Créer une application Azure Function....

    Screenshot of create a new function app instance.

  4. Créez une instance en utilisant les valeurs spécifiées dans le tableau suivant :

    Paramètre valeur Description
    Nom Nom globalement unique Nom qui identifie uniquement votre nouvelle application de fonction. Acceptez ce nom ou entrez un nouveau nom. Les caractères valides sont a-z, 0-9 et -.
    Abonnement Votre abonnement Sélectionnez l’abonnement Azure à utiliser. Acceptez cet abonnement ou sélectionnez-en un nouveau dans la liste déroulante.
    Groupe de ressources Nom de votre groupe de ressources Groupe de ressources dans lequel vous souhaitez créer votre application de fonction. Sélectionnez Nouveau pour créer un groupe de ressources. Vous pouvez également choisir un groupe de ressources existant dans la liste déroulante.
    Type de plan Consommation 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. D’autres plans d’hébergement occasionnent des coûts plus élevés.
    Lieu Emplacement du service d’application Choisissez un Emplacement dans une région proche de chez vous, ou proche d’autres services auxquels vos fonctions ont accès.
    Stockage Azure Compte de stockage à usage général Un compte de stockage Azure est obligatoire par le runtime Functions. Sélectionnez Nouveau pour configurer un compte de stockage universel. Vous pouvez également choisir un compte existant qui répond aux exigences relatives aux comptes de stockage.
    Application Insights Instance Application Insights Vous devez activer l’intégration Application Insights pour votre application de fonction. Sélectionnez Nouveau pour créer une instance, dans un espace de travail Log Analytics nouveau ou existant. Vous pouvez également choisir une instance existante.

    Screenshot of Create App Service dialog.

  5. Sélectionnez Créer pour créer une application de fonction et les ressources associées dans Azure. L’état de la création des ressources est affiché en bas à gauche de la fenêtre.

  6. Dans Instance de fonction, assurez-vous que Exécuter à partir du fichier de package est coché. Votre application de fonction est déployée en utilisant Zip Deploy avec le mode Exécuter à partir du fichier de package activé. Zip Deploy est la méthode de déploiement recommandée pour votre projet Functions offrant de meilleures performances.

    Screenshot of Finish profile creation.

  7. Sélectionnez Terminer, puis dans la page Publier, sélectionnez Publier pour déployer le package contenant vos fichiers projet dans votre nouvelle application de fonction dans Azure.

    Une fois le déploiement terminé, l’URL racine de l’application de fonction dans Azure est affichée sous l’onglet Publier.

  8. Dans l’onglet Publier, dans la section Hébergement, choisissez Ouvrir dans le portail Azure. La nouvelle ressource Azure d’application de fonction est alors ouverte dans le portail Azure.

    Screenshot of Publish success message.

Vérifier votre fonction dans Azure

  1. Dans le portail Azure, vous devez être dans la page Vue d’ensemble de votre nouvelle application de fonction.

  2. Sous Fonctions, sélectionnez votre nouvelle fonction nommée HttpExample, puis, dans la page de fonction, sélectionnez Obtenir l’URL de la fonction et l’icône Copier dans le Presse-papiers.

  3. Dans la barre d’adresses de votre navigateur, collez l’URL que vous venez de copier et exécutez la demande.

    L’URL qui appelle la fonction à déclencheur HTTP est au format suivant :

    https://<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 :

    Function response in the browser

Nettoyer les ressources

Ressources dans Azure fait référence aux applications de fonction, fonctions, comptes de stockage, et ainsi de suite. Elles sont rassemblées en groupes de ressources, et vous pouvez supprimer tous les éléments d’un groupe en supprimant le groupe.

Vous avez créé des ressources Azure pour suivre ce guide de démarrage rapide. Vous pouvez être facturé pour ces ressources, en fonction de l’état de votre compte et de la tarification du service. Les autres démarrages rapides de cette collection reposent sur ce démarrage rapide. Si vous envisagez d’utiliser d’autres guides de démarrage rapide ou tutoriels, ou l’un des services que vous avez créés dans ce guide de démarrage rapide, ne supprimez pas les ressources.

Utiliser les étapes suivantes pour supprimer l’application de fonction et ses ressources connexes afin d’éviter des coûts supplémentaires.

  1. Dans le dialogue Publication Visual Studio, dans la section Hébergement, sélectionnez Ouvrir dans le portail Azure.

  2. Dans la page de l’application de fonction, sélectionnez l’onglet Vue d’ensemble, puis le lien sous Groupe de ressources.

    Select the resource group to delete from the function app page

  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.

  4. Sélectionnez Supprimer le groupe de ressources et suivez les instructions.

    Cette opération peut prendre quelques minutes. Une fois terminée, une notification s’affiche pendant quelques secondes. Vous pouvez également sélectionner l’icône représentant une cloche en haut de la page pour afficher la notification.

Étapes suivantes

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.

Pour en savoir plus sur l’utilisation des fonctions C# qui s’exécutent dans un processus Worker isolé, consultez le Guide d’exécution d’Azure Functions C# dans un processus Worker isolé. Consultez Versions de .NET prises en charge pour connaître les autres versions de .NET prises en charge dans un processus Worker isolé.

Passez à l’article suivant pour savoir comment ajouter une liaison de file d’attente de stockage Azure à votre fonction :