Bagikan melalui


Mendaftarkan ekstensi pengikatan Azure Functions

Runtime Azure Functions secara asli menjalankan pemicu HTTP dan timer. Perilaku pemicu dan pengikatan lain yang didukung diimplementasikan dalam paket ekstensi terpisah.

Proyek yang menggunakan pustaka kelas .NET menggunakan ekstensi pengikatan yang diinstal dalam proyek sebagai paket NuGet.

Bundel ekstensi memungkinkan aplikasi non-.NET menggunakan ekstensi pengikatan tanpa harus berinteraksi dengan infrastruktur .NET.

Extension bundles

Bundel ekstensi menambahkan serangkaian 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 Azure Functions dari templat non-.NET, bundel ekstensi sudah diaktifkan dalam file aplikasi host.json .

Jika memungkinkan, gunakan rentang versi terbaru untuk mendapatkan performa aplikasi yang optimal dan akses ke fitur terbaru. Untuk mempelajari selengkapnya tentang bundel ekstensi, lihat Bundel ekstensi Azure Functions.

Jika Anda tidak dapat menggunakan bundel ekstensi, Anda harus menginstal ekstensi secara eksplisit.

Menginstal ekstensi secara eksplisit

Untuk proyek yang menggunakan pustaka kelas C# yang dikompilasi, Anda menginstal paket NuGet untuk ekstensi yang Anda butuhkan seperti biasa di aplikasi Anda. Untuk informasi selengkapnya, lihat panduan pengembang Visual Studio Code atau panduan pengembang Visual Studio.

Pastikan untuk mendapatkan paket yang benar, karena namespace berbeda tergantung pada model eksekusi:

Execution model Namespace
Proses pekerja terisolasi Microsoft.Azure.Functions.Worker.Extensions.*
In-process Microsoft.Azure.WebJobs.Extensions.*

Azure Functions menyediakan bundel ekstensi untuk proyek non-.NET. Bundel ini berisi serangkaian ekstensi pengikatan lengkap yang diverifikasi agar kompatibel. Jika Anda mengalami masalah kompatibilitas antara dua atau beberapa ekstensi pengikatan, tinjau kombinasi versi ekstensi yang kompatibel. Untuk kombinasi ekstensi pengikatan yang didukung, lihat halaman rilis untuk bundel ekstensi.

Ada beberapa kasus ketika Anda tidak dapat menggunakan bundel ekstensi, seperti saat Anda perlu menggunakan versi prarilis tertentu dari ekstensi tertentu. Dalam kasus yang jarang terjadi ini, Anda harus menginstal ekstensi pengikatan yang diperlukan secara manual dalam file proyek C# yang mereferensikan ekstensi tertentu yang diperlukan aplikasi Anda.

Untuk menginstal ekstensi pengikatan secara manual:

  1. Hapus referensi bundel ekstensi dari file Anda host.json .

  2. func extensions install Gunakan perintah di Azure Functions Core Tools untuk menghasilkan file yang diperlukan extensions.csproj di akar proyek lokal Anda.

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

  3. Edit file extensions.csproj dengan secara eksplisit menambahkan elemen PackageReference untuk setiap ekstensi dan versi pengikatan tertentu yang diperlukan oleh aplikasi Anda.

  4. Validasi fungsionalitas aplikasi Anda secara lokal lalu sebarkan ulang proyek Anda, termasuk extensions.csproj, ke aplikasi fungsi Anda di Azure.

Sesegera mungkin, Anda harus mengalihkan aplikasi anda kembali ke menggunakan bundel ekstensi terbaru yang didukung.