IronPDF 사용하여 Azure Functions를 로컬에서 디버깅하기
Azure를 로컬에서 실행할 때 발생하는 문제점
이 문제를 접할 때 흔히 발생하는 예외 오류는 "배포 구성 파일 IronPDF 을 찾는 중 오류 발생"입니다.
추천: .NET Core 3.1을 대상으로 하는 Windows 호스팅 Azure 기능 앱 실행 <TargetFramework>netcoreapp3.1</TargetFramework>
필수: Visual Studio에서 Azure Function을 생성할 때 기본 "프로세스 내" 구성을 사용하십시오. 최신 버전의 IronPDF " 격리된 작업자 모델에서 C# Azure Functions 실행 가이드 "에 설명된 대로 '프로세스 외부' 또는 '격리된 프로세스'에서 실행되는 Azure Functions를 지원합니다. 그러나 이전 버전에서는 이러한 유형의 Azure Functions를 지원하지 않을 수 있습니다.

Azure Functions를 로컬에서 실행할 때 종속성 관련 문제 발생
Azure를 로컬에서 실행할 때 Azurite(VS2022) 또는 Azure Storage Emulator(VS2019)를 사용하면 Storage Emulator가 배포에 사용하는 추가 bin 디렉터리가 생성됩니다. 이 디렉터리에는 DLL 파일만 복사되므로 추가 파일이 필요한 소프트웨어는 작동하지 않거나 위와 같은 예외가 발생할 수 있습니다.
이 문제를 해결하려면 런타임 디렉토리를 스토리지 에뮬레이터에서 사용하는 별도의 bin 디렉토리로 복사하면 됩니다. 로컬에서 실행할 경우, 이 작업을 빌드 후 단계 로 수행하는 것을 권장합니다(아래 지침 참조). (재컴파일/빌드를 하면 bin 디렉토리가 원래 상태로 되돌아갑니다.) 클라우드 환경에 배포할 경우에는 이러한 문제가 발생하지 않습니다.
- 문제: Azure Function 프로젝트를 로컬에서 실행할 때, 함수가 실행되는 bin 폴더가 추가로 생성됩니다. 하지만 필요한 모든 파일을 해당 bin 폴더에 복사하지는 않습니다.
- 예시: C:\code\azure-functions-test 경로에 있는 프로젝트가 C:\code\azure-functions-test\bin\Debug\netcoreapp3.1 경로로 빌드되는 경우
- 해결 방법: C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\runtimes 디렉터리를 복사하여 C:\code\azure-functions-test\bin\Debug\netcoreapp3.1\bin 디렉터리에도 생성하십시오.
- 기존 파일이 있는 경우 덮어쓰기 여부를 묻는 메시지가 표시되면 덮어쓰기를 선택합니다.

빌드 후 이벤트
필요한 파일을 로컬 Azure Function bin 디렉터리로 복사하는 프로세스를 자동화하려면 다음 지침에 따라 Visual Studio에서 빌드 후 이벤트를 설정하세요.
- Azure Functions 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 속성을 선택합니다.
- 이벤트 섹션까지 아래로 스크롤하세요.
- 아래와 같이 빌드 후 이벤트를 입력합니다.
XCOPY "$(TargetDir)runtimes" "$(TargetDir)bin\runtimes" /S /E /Y /I /R /D
XCOPY "$(TargetDir)runtimes" "$(TargetDir)bin\runtimes" /S /E /Y /I /R /D
이 명령은 다음을 수행합니다.
- runtimes 디렉토리의 내용을 bin/runtimes 디렉토리로 복사하십시오.
/S및/E스위치는 모든 하위 디렉터리와 빈 디렉터리가 포함되도록 보장합니다./Y스위치는 기존 대상 파일을 덮어쓰겠다는 확인 메시지를 억제합니다./I스위치는 대상이 존재하지 않으면 디렉터리로 가정합니다./R스위치는 읽기 전용 파일을 덮어씁니다./D스위치는 지정된 날짜 이후에 변경된 파일을 복사합니다.


