Azure Functions 執行階段會以原生方式執行 HTTP 和計時器觸發程序。 其他支援的 觸發程式和系結 的行為會在不同的擴充套件中實作。
使用 .NET 類別庫的專案會使用安裝在專案中做為 NuGet 套件的系結延伸模組。
延伸模組套件組合允許非 .NET 應用程式使用繫結延伸模組,而不需要與 .NET 基礎結構互動。
Extension bundles
延伸模組套件組合會將一組預先定義的相容繫結延伸模組新增至函數應用程式。 延伸模組套件組合已設定版本。 每個版本都包含一組特定的繫結延伸模組,這些延伸模組會經過驗證以一起運作。 根據應用程式所需的擴充功能選取套件組合版本。
當您從 non-.NET 範本建立 Azure Functions 專案時,應用程式檔案 host.json 中已經啟用延伸模組套件組合。
可能的話,請使用最新版本範圍來取得最佳的應用程式效能和最新功能的存取權。 若要深入瞭解擴充功能套件組合,請參閱 Azure Functions 擴充功能套件組合。
如果您無法使用延伸模組套件組合 (這種情況不太可能發生),則必須改為明確地安裝延伸模組。
明確安裝延伸模組
對於使用已編譯 C# 類別庫的專案,您可以安裝 NuGet 套件,以符合您一般在應用程式中所需的擴充功能。 如需詳細資訊,請參閱 Visual Studio Code 開發人員指南或 Visual Studio 開發人員指南。
請務必取得正確的套件,因為命名空間會根據執行模型而有所不同:
| Execution model | Namespace |
|---|---|
| 隔離式背景工作處理序 | Microsoft.Azure.Functions.Worker.Extensions.* |
| In-process | Microsoft.Azure.WebJobs.Extensions.* |
Azure Functions 提供 non-.NET 項目的擴充套件組合。 這些套件組合包含一組已驗證為相容的完整系結延伸模組。 如果您在兩個或多個系結延伸模組之間發生相容性問題,請檢閱延伸模組版本的相容組合。 如需支援的系結延伸模組組合,請參閱 延伸模組套件組合的版本頁面。
在某些情況下,您無法使用延伸模組套件組合,例如當您需要使用特定延伸模組的特定發行前版本時。 在這些罕見的情況下,您必須在 C# 專案檔中手動安裝任何必要的系結延伸模組,以參考應用程式所需的特定延伸模組。
若要手動安裝系結延伸模組:
從
host.json檔案中移除延伸模組套件組合參考。func extensions install使用 Azure Functions Core Tools 中的 命令,在本機專案的根目錄中產生必要的extensions.csproj檔案。若要進行僅限入口網站的開發,您必須在 Azure 中的函式應用程式的根目錄中手動建立
extensions.csproj檔案。 若要深入了解,請參閱手動安裝延伸模組。編輯
extensions.csproj檔案,為您的應用程式所需的每個特定的繫結延伸模組和版本明確新增PackageReference元素。在本機驗證您的應用程式功能,然後將您的專案,包括
extensions.csproj重新部署至 Azure 中的函式應用程式。
您應該儘快 將應用程式切換回使用最新的支援延伸模組套件組合。