Mendaftarkan ekstensi pengikatan Azure Functions

Dimulai dengan Azure Functions versi 2.x, runtime fungsi hanya menyertakan pemicu HTTP dan timer secara default. Pemicu dan pengikatan lainnya tersedia sebagai paket terpisah.

Aplikasi fungsi pustaka kelas .NET menggunakan pengikatan yang diinstal dalam proyek sebagai paket NuGet. Bundel ekstensi memungkinkan aplikasi fungsi non-.NET untuk menggunakan pengikatan yang sama tanpa harus berurusan dengan infrastruktur .NET.

Tabel berikut menunjukkan kapan dan bagaimana Anda mendaftarkan pengikatan.

Lingkungan pengembangan Pendaftaran
di Functions 1.x
Pendaftaran
dengan Fungsi 2.x atau yang lebih baru
Portal Azure Otomatis Otomatis*
Bahasa non-.NET Otomatis Gunakan bundel ekstensi (disarankan) atau menginstal ekstensi secara eksplisit
Pustaka kelas C# menggunakan Visual Studio Gunakan alat NuGet Gunakan alat NuGet
Pustaka kelas C# menggunakan Visual Studio Code T/A Gunakan .NET Core CLI

* Portal menggunakan bundel ekstensi, termasuk skrip C#.

Bundel ekstensi

Secara default, bundel ekstensi digunakan oleh aplikasi fungsi Java, JavaScript, PowerShell, Python, skrip C#, dan Custom Handler untuk bekerja dengan ekstensi pengikatan. Dalam kasus di mana bundel ekstensi tidak dapat digunakan, Anda dapat secara eksplisit menginstal ekstensi pengikatan dengan proyek aplikasi fungsi Anda. Bundel ekstensi didukung untuk versi 2.x dan versi yang lebih baru dari runtime Functions.

Bundel ekstensi adalah cara untuk menambahkan sekumpulan ekstensi pengikatan yang kompatibel yang telah ditentukan sebelumnya ke aplikasi fungsi Anda. Bundel ekstensi diberi versi. Setiap versi berisi serangkaian ekstensi pengikatan tertentu yang diverifikasi untuk bekerja sama. Pilih versi bundel berdasarkan ekstensi yang Anda butuhkan di aplikasi Anda.

Saat Anda membuat proyek non-.NET Functions dari alat atau di portal, bundel ekstensi sudah diaktifkan di file host.json aplikasi.

Referensi bundel ekstensi ditentukan oleh bagian extensionBundle di host.json sebagai berikut:

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[4.0.0, 5.0.0)"
    }
}

Properti berikut ini tersedia dalam extensionBundle:

Properti Deskripsi
id Namespace untuk bundel ekstensi Microsoft Azure Functions.
version Rentang versi bundel untuk diinstal. Runtime Functions selalu memilih versi maksimum yang diizinkan yang ditentukan oleh rentang versi atau interval. Misalnya, version rentang [4.0.0, 5.0.0) nilai memungkinkan semua versi bundel dari 4.0.0 hingga tetapi tidak termasuk 5.0.0. Untuk informasi selengkapnya, lihat notasi interval untuk menentukan rentang versi.

Tabel berikut mencantumkan rentang versi default microsoft.Azure.Functions.ExtensionBundle default dan tautan ke ekstensi yang disertakan.

Versi bundel Versi dalam host.json Ekstensi yang disertakan
1.x [1.*, 2.0.0) Lihat extensions.json digunakan untuk menghasilkan bundel.
2.x [2.*, 3.0.0) Lihat extensions.json digunakan untuk menghasilkan bundel.
3.x [3.3.0, 4.0.0) Lihat extensions.json digunakan untuk menghasilkan bundel.
4.x [4.0.0, 5.0.0) Lihat extensions.json digunakan untuk menghasilkan bundel.

Catatan

Meskipun host.json mendukung rentang kustom untuk version, Anda harus menggunakan nilai rentang versi dari tabel ini, seperti [4.0.0, 5.0.0).

Menginstal ekstensi secara eksplisit

Untuk proyek pustaka kelas C# yang dikompilasi (dalam proses dan proses pekerja terisolasi), Anda menginstal paket NuGet untuk ekstensi yang Anda butuhkan seperti biasa. Misalnya, lihat panduan pengembang Visual Studio Code atau panduan pengembang Visual Studio.

Untuk bahasa non-.NET dan skrip C#, ketika Anda tidak dapat menggunakan bundel ekstensi, Anda perlu menginstal ekstensi pengikatan yang diperlukan secara manual di proyek lokal Anda. Cara termudah adalah dengan menggunakan Azure Functions Core Tools. Untuk informasi selengkapnya, lihat penginstalan ekstensi func.

Untuk pengembangan khusus portal, Anda perlu membuat file extensions.csproj secara manual di akar aplikasi fungsi Anda. Untuk mempelajari selengkapnya, lihat Memasang ekstensi secara manual.

Langkah berikutnya