Aracılığıyla paylaş


Azure İşlevleri bağlama uzantılarını kaydetme

Azure İşlevleri çalışma zamanı HTTP ve zamanlayıcı tetikleyicilerini yerel olarak çalıştırır. Desteklenen diğer tetikleyicilerin ve bağlamaların davranışları ayrı uzantı paketlerinde uygulanır.

.NET sınıf kitaplığı kullanan projeler, projeye NuGet paketleri olarak yüklenen bağlama uzantılarını kullanır.

Uzantı paketleri, non-.NET uygulamaların .NET altyapısıyla etkileşime geçmek zorunda kalmadan bağlama uzantılarını kullanmasına olanak sağlar.

Extension bundles

Uzantı paketleri, işlev uygulamanıza önceden tanımlanmış bir uyumlu bağlama uzantıları kümesi ekler. Uzantı paketleri sürümü oluşturulur. Her sürüm, birlikte çalıştığı doğrulanmış belirli bir bağlama uzantıları kümesi içerir. Uygulamanızda ihtiyacınız olan uzantılara göre bir paket sürümü seçin.

bir non-.NET şablonundan Azure İşlevleri projesi oluşturduğunuzda, uzantı paketleri uygulamanın host.json dosyasında zaten etkinleştirilir.

Mümkün olduğunda en iyi uygulama performansını elde etmek ve en son özelliklere erişmek için en son sürüm aralığını kullanın. Uzantı paketleri hakkında daha fazla bilgi edinmek için bkz. Azure İşlevleri uzantı paketleri.

Bir uzantı paketini kullanamama olasılığı düşük bir durumda, bunun yerine uzantıları açıkça yüklemeniz gerekir.

Uzantıları açıkça yükleme

Derlenmiş C# sınıf kitaplığı kullanan projeler için, uygulamalarınızda olduğu gibi ihtiyacınız olan uzantılar için NuGet paketlerini yüklersiniz. Daha fazla bilgi için bkz. Visual Studio Code geliştirici kılavuzu veya Visual Studio geliştirici kılavuzu.

Ad alanı yürütme modeline bağlı olarak farklılık gösterdiğinden doğru paketi edinmeye dikkat edin:

Execution model Namespace
Yalıtılmış işçi süreci Microsoft.Azure.Functions.Worker.Extensions.*
In-process Microsoft.Azure.WebJobs.Extensions.*

Azure İşlevleri, non-.NET projeleri için uzantı paketleri sağlar. Bu paketler uyumlu olduğu doğrulanmış tam bir bağlama uzantıları kümesi içerir. İki veya daha fazla bağlama uzantısı arasında uyumluluk sorunları yaşıyorsanız, uzantı sürümlerinin uyumlu birleşimlerini gözden geçirin. Desteklenen bağlama uzantısı kombinasyonları için uzantı paketlerinin sürüm sayfasına bakın.

Belirli bir uzantının belirli bir yayın öncesi sürümünü kullanmanız gerektiği gibi uzantı paketlerini kullanamamanıza neden olan durumlar vardır. Bu nadir durumlarda, uygulamanızın gerektirdiği belirli uzantılara başvuran gerekli bağlama uzantılarını bir C# proje dosyasına el ile yüklemeniz gerekir.

Bağlama uzantılarını el ile yüklemek için:

  1. Dosyanızdan uzantı paketi referansını host.json kaldırın.

  2. func extensions install Yerel projenizin kökünde gerekli extensions.csproj dosyayı oluşturmak için Azure İşlevleri Çekirdek Araçları'ndaki komutunu kullanın.

    Yalnızca portal geliştirme için Azure'da işlev uygulamanızın kökünde el ile bir extensions.csproj dosya oluşturmanız gerekir. Daha fazla bilgi edinmek için bkz . Uzantıları el ile yükleme.

  3. Uygulamanızın extensions.csproj gerektirdiği her bağlama uzantısı ve sürümü için açıkça bir PackageReference öğe ekleyerek dosyayı düzenleyin.

  4. Uygulamanızın işlevselliğini yerel olarak doğrulayın ve ardından extensions.csproj dahil projenizi Azure'daki işlev aplikasyonunuza yeniden dağıtın.

En kısa sürede uygulamanızı desteklenen en son uzantı paketini kullanmaya geri döndürmeniz gerekir.