다음을 통해 공유


Azure Functions 바인딩 확장 등록

Azure Functions 런타임은 기본적으로 HTTP 및 타이머 트리거를 실행합니다. 지원되는 다른 트리거 및 바인딩 의 동작은 별도의 확장 패키지에서 구현됩니다.

.NET 클래스 라이브러리 프로젝트는 프로젝트에 설치된 바인딩 확장을 NuGet 패키지로 사용합니다.

확장 번들을 사용하면 non-.NET 앱이 .NET 인프라와 상호 작용하지 않고도 바인딩 확장을 사용할 수 있습니다.

확장 번들

확장 번들은 미리 정의된 호환 바인딩 확장 집합을 함수 앱에 추가합니다. 확장 번들의 버전이 지정됩니다. 각 버전에는 함께 작동하도록 확인된 특정 바인딩 확장 집합이 포함되어 있습니다. 앱에 필요한 확장에 따라 번들 버전을 선택합니다.

non-.NET 템플릿에서 Azure Functions 프로젝트를 만들 때 확장 번들은 앱의 host.json 파일에서 이미 활성화되어 있습니다.

가능하면 최신 버전 범위를 사용하여 최적의 앱 성능과 최신 기능에 액세스할 수 있습니다. 확장 번들에 대한 자세한 내용은 Azure Functions 확장 번들을 참조하세요.

만약 확장 번들을 사용할 수 없는 경우 확장을 명시적으로 설치해야 합니다.

명시적으로 확장 설치

컴파일된 C# 클래스 라이브러리 프로젝트의 경우 앱에서 일반적으로와 같이 필요한 확장에 대한 NuGet 패키지를 설치합니다. 자세한 내용은 Visual Studio Code 개발자 가이드 또는 Visual Studio 개발자 가이드를 참조하세요.

네임스페이스는 실행 모델에 따라 다르므로 올바른 패키지를 가져와야 합니다.

실행 모델 네임스페이스
격리된 작업자 프로세스 Microsoft.Azure.Functions.Worker.Extensions.*
In Process Microsoft.Azure.WebJobs.Extensions.*

Functions는 호환 가능한 것으로 확인된 바인딩 확장의 전체 집합을 포함하는 non-.NET 프로젝트에 대한 확장 번들을 제공합니다. 둘 이상의 바인딩 확장 간에 호환성 문제가 있는 경우 호환되는 확장 버전의 조합을 검토합니다. 바인딩 확장의 지원되는 조합은 확장 번들 릴리스 페이지를 참조하세요.

특정 확장의 특정 시험판 버전을 사용해야 하는 경우와 같이 확장 번들을 사용할 수 없는 경우가 있습니다. 이러한 드문 경우에서는 앱에 필요한 특정 확장을 참조하는 모든 필수 바인딩 확장을 C# 프로젝트 파일에 수동으로 설치해야 합니다. 바인딩 확장을 수동으로 설치하려면 다음을 수행합니다.

  1. host.json 파일에서 확장 번들 참조를 제거합니다.

  2. Azure Functions Core Tools의 func 확장 설치 명령을 사용하여 로컬 프로젝트의 루트에 필요한 extensions.csproj 파일을 생성합니다.

    포털 전용 개발의 경우 Azure에서 함수 앱의 루트에 extensions.csproj 파일을 수동으로 만들어야 합니다. 자세한 내용은 수동으로 확장 설치를 참조하세요.

  3. 앱에 필요한 모든 특정 바인딩 확장 및 버전에 대한 요소를 명시적으로 추가하여 PackageReference 파일을 편집합니다.

  4. 로컬에서 앱 기능의 유효성을 검사한 다음 extensions.csproj를 포함한 프로젝트를 Azure의 함수 앱에 다시 배포합니다.

가능한 한 빨리 지원 되는 최신 확장 번들을 사용하도록 앱을 다시 전환해야 합니다.

다음 단계