Debugging Azure Functions Locally with IronPDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

Problèmes lors de l'exécution d'Azure localement

Une exception courante rencontrée lors de ce problème est "Erreur lors de la localisation du fichier de configuration de déploiement IronPdf.Native.Chrome.deployment.json"

Recommandé : Exécutez des applications de fonction Azure hébergées par Windows qui ciblent .NET Core 3.1 <TargetFramework>netcoreapp3.1</TargetFramework>

Requis : Utilisez la configuration par défaut "in-process" lors de la création d'une fonction Azure dans Visual Studio. La dernière version de IronPDF prend en charge les fonctions Azure s'exécutant 'en dehors du processus' ou dans un 'processus isolé', comme décrit dans le "Guide pour exécuter les fonctions Azure C# dans le modèle de travailleur isolé." Cependant, les versions plus anciennes pourraient ne pas prendre en charge ces types de fonctions Azure.

Diagramme de fonction Azure

Problème de dépendances lors de l'exécution des fonctions Azure localement

Lors de l'exécution d'Azure localement, en utilisant Azurite (VS2022) ou l'émulateur de stockage Azure (VS2019), un répertoire bin supplémentaire est créé que l'émulateur de stockage utilise pour le déploiement. Seuls les fichiers DLL sont copiés dans ce répertoire, donc les logiciels qui nécessitent des fichiers supplémentaires ne fonctionnent pas et peuvent générer l'exception ci-dessus.

Vous pouvez résoudre ce problème en copiant le répertoire runtimes dans le répertoire bin séparé utilisé par l'émulateur de stockage. Nous recommandons de faire cela comme un événement post-construction (voir ci-dessous pour les instructions) lors de l'exécution locale (car la recompilation/construction ramènera le répertoire bin à son état d'origine). Vous ne rencontrerez pas ce problème lors du déploiement dans le cloud.

  • Problème : Lorsque vous exécutez un projet de fonction Azure localement, il crée un dossier bin supplémentaire à partir duquel il exécute la fonction. Cependant, il ne copie pas tous les fichiers nécessaires dans ce dossier bin.
  • Exemple : Un projet à C:\code\azure-functions-test qui se construit à C:\code\azure-functions-test\bin\Debug\netcoreapp3.1
  • Solution : Copiez le répertoire C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\runtimes afin qu'il existe également dans C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\bin
  • Remplacez tous les fichiers existants si on vous le demande

Diagramme de dépendance

Événement post-construction

Pour automatiser le processus de copie des fichiers nécessaires dans le répertoire bin local de la fonction Azure, suivez ces instructions pour configurer un événement post-construction dans Visual Studio :

  1. Faites un clic droit sur le projet de fonctions Azure, sélectionnez Propriétés.
  2. Faites défiler jusqu'à la section Événements.
  3. Entrez un événement post-construction comme indiqué ci-dessous :
XCOPY "$(TargetDir)runtimes" "$(TargetDir)bin\runtimes" /S /E /Y /I /R /D
XCOPY "$(TargetDir)runtimes" "$(TargetDir)bin\runtimes" /S /E /Y /I /R /D
SHELL

Cette commande va :

  • Copier le contenu du répertoire runtimes dans le répertoire bin/runtimes.
  • Les options /S et /E garantissent que tous les sous-répertoires et répertoires vides sont inclus.
  • L'option /Y supprime la demande de confirmation de remplacement d'un fichier de destination existant.
  • L'option /I suppose que la destination est un répertoire si elle n'existe pas.
  • L'option /R remplace les fichiers en lecture seule.
  • L'option /D copie les fichiers modifiés à partir de la date spécifiée.

Configuration de l'événement post-construction

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 16,154,058 | Version : 2025.11 vient de sortir