Debugowanie Azure Functions lokalnie z IronPDF

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

Problemy przy uruchamianiu Azure lokalnie

Typowym wyjątkiem, który można zobaczyć w przypadku napotkania tego problemu, jest "Błąd podczas lokalizowania pliku konfiguracyjnego wdrażania IronPdf.Native.Chrome.deployment.json."

Zalecane: Uruchom aplikacje Azure Function hostowane w systemie Windows, przeznaczone dla platformy .NET Core 3.1 <TargetFramework>netcoreapp3.1</TargetFramework>

Wymagane: Użyj domyślnej konfiguracji "in-process" podczas tworzenia funkcji Azure w Visual Studio. Najnowsza wersja IronPDF obsługuje Azure Functions uruchamiane 'out-of-process' lub w 'izolowanym procesie', jak opisano w "Przewodnik po uruchamianiu Azure Functions w C# w modelu izolowanego pracownika." Jednak starsze wersje mogą nie obsługiwać tych typów Azure Functions.

Schemat funkcji Azure

Problem z zależnościami przy uruchamianiu Azure Functions lokalnie

Podczas uruchamiania Azure lokalnie, używając Azurite (VS2022) lub Emulatora Azure Storage (VS2019), tworzony jest dodatkowy katalog bin, który Emulator Storage używa do wdrażania. Do tego katalogu kopiowane są tylko pliki DLL, więc oprogramowanie, które wymaga dodatkowych plików, nie będzie działać i może rzucać powyższym wyjątkiem.

Można rozwiązać ten problem, kopiując katalog runetimes do oddzielnego katalogu bin używanego przez Emulator Storage. Zalecamy wykonanie tego jako zdarzenie post-build (patrz poniżej instrukcje) podczas uruchamiania lokalnego (ponowne rekompilowanie/budowanie przywróci katalog bin do jego pierwotnego stanu). Nie napotkasz tego problemu podczas wdrażania do chmury.

  • Problem: Podczas lokalnego uruchamiania projektu funkcji Azure, tworzy on dodatkowy folder bin, z którego uruchamia funkcję. Jednakże nie kopiuje do wspomnianego folderu bin wszystkich niezbędnych plików.
  • Przykład: Projekt w C:\code\azure-functions-test, który buduje do C:\code\azure-functions-test\bin\Debug\netcoreapp3.1
  • Rozwiązanie: Sklonuj katalog C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\runtimes aby także istniał w C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\bin
  • Nadpisz wszystkie istniejące pliki, jeśli zostaniesz poproszony o potwierdzenie

Schemat zależności

Zdarzenie Post-Build

Aby zautomatyzować proces kopiowania niezbędnych plików do lokalnego katalogu bin funkcji Azure, postępuj zgodnie z tymi instrukcjami, aby ustawić zdarzenie post-build w Visual Studio:

  1. Kliknij prawym przyciskiem myszy na projekcie Azure Functions, wybierz Właściwości.
  2. Przewiń do sekcji Zdarzenia.
  3. Wprowadź zdarzenie post-build jak pokazano poniżej:
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

Ta komenda wykonuje:

  • Kopiuje zawartość katalogu runtimes do katalogu bin/runtimes.
  • Przełączniki /S i /E zapewniają uwzględnienie wszystkich podkatalogów i pustych katalogów.
  • Przełącznik /Y wyłącza monit o potwierdzenie, czy chcesz nadpisać istniejący plik docelowy.
  • Przełącznik /I zakłada, że miejsce docelowe jest katalogiem, jeśli nie istnieje.
  • Przełącznik /R nadpisuje pliki tylko do odczytu.
  • Przełącznik /D kopiuje pliki zmienione w określonym dniu lub później.

Konfiguracja zdarzeń po kompilacji

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 18,926,724 | Wersja: 2026.5 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronPdf
Uruchom przykład i zobacz, jak Twój kod HTML zamienia się w plik PDF.