Azure Functions-bindingsextensies registreren

Vanaf Azure Functions versie 2.x bevat de functions-runtime standaard alleen HTTP- en timertriggers. Andere triggers en bindingen zijn beschikbaar als afzonderlijke pakketten.

.NET-klassenbibliotheekfuncties-apps maken gebruik van bindingen die in het project zijn geïnstalleerd als NuGet-pakketten. Met extensiebundels kunnen non-.NET functions-apps dezelfde bindingen gebruiken zonder dat ze te maken hebben met de .NET-infrastructuur.

De volgende tabel geeft aan wanneer en hoe u bindingen registreert.

Ontwikkelomgeving Registratie
in Functions 1.x
Registratie
in Functions 2.x of hoger
Azure Portal Automatisch Automatisch*
Non-.NET talen Automatisch Uitbreidingsbundels gebruiken (aanbevolen) of expliciet extensies installeren
C#-klassebibliotheek met Visual Studio NuGet-hulpprogramma's gebruiken NuGet-hulpprogramma's gebruiken
C#-klassebibliotheek met Visual Studio Code N.v.t. .NET Core CLI gebruiken

* Portal maakt gebruik van extensiebundels, waaronder C#-script.

Uitbreidingsbundels

Extensiebundels worden standaard gebruikt door Java-, JavaScript-, PowerShell-, Python-, C#-script- en Aangepaste Handler-functie-apps om te werken met bindingsextensies. In gevallen waarin uitbreidingsbundels niet kunnen worden gebruikt, kunt u expliciet bindingsextensies installeren met uw functie-app-project. Uitbreidingsbundels worden ondersteund voor versie 2.x en latere versie van de Functions-runtime.

Uitbreidingsbundels zijn een manier om een vooraf gedefinieerde set compatibele bindingsextensies toe te voegen aan uw functie-app. Uitbreidingsbundels zijn versiebeheer. Elke versie bevat een specifieke set bindingsextensies die zijn geverifieerd om samen te werken. Selecteer een bundelversie op basis van de extensies die u nodig hebt in uw app.

Wanneer u een non-.NET Functions-project maakt op basis van hulpprogramma's of in de portal, zijn extensiebundels al ingeschakeld in het host.json-bestand van de app.

Een uitbreidingsbundelverwijzing wordt als volgt gedefinieerd door de extensionBundle sectie in een host.json :

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

De volgende eigenschappen zijn beschikbaar in extensionBundle:

Eigenschappen Beschrijving
id De naamruimte voor extensiebundels van Microsoft Azure Functions.
version Het versiebereik van de bundel die moet worden geïnstalleerd. De Functions-runtime kiest altijd de maximaal toegestane versie die door het versiebereik of -interval is gedefinieerd. Met een version waardebereik kunnen [4.0.0, 5.0.0) bijvoorbeeld alle bundelversies van 4.0.0 tot en met 5.0.0 worden toegestaan. Zie de intervalnotatie voor het opgeven van versiebereiken voor meer informatie.

De volgende tabel bevat de momenteel beschikbare versiebereiken van de standaardbundels Microsoft.Azure.Functions.ExtensionBundle en koppelingen naar de extensies die ze bevatten.

Bundelversie Versie in host.json Inbegrepen extensies
1.x [1.*, 2.0.0) Zie extensions.json gebruikt om de bundel te genereren.
2.x [2.*, 3.0.0) Zie extensions.json gebruikt om de bundel te genereren.
3.x [3.3.0, 4.0.0) Zie extensions.json gebruikt om de bundel te genereren.
4.x [4.0.0, 5.0.0) Zie extensions.json gebruikt om de bundel te genereren.

Notitie

Hoewel host.json ondersteuning biedt voor versionaangepaste bereiken, moet u een versiebereikwaarde uit deze tabel gebruiken, zoals [4.0.0, 5.0.0).

Extensies expliciet installeren

Voor gecompileerde C#-klassebibliotheekprojecten (proces en geïsoleerd werkproces) installeert u de NuGet-pakketten voor de extensies die u normaal nodig hebt. Zie de ontwikkelaarshandleiding voor Visual Studio Code of de ontwikkelaarshandleiding voor Visual Studio voor voorbeelden.

Als u voor non-.NET talen en C#-script geen extensiebundels kunt gebruiken, moet u de vereiste bindingsextensies handmatig installeren in uw lokale project. De eenvoudigste manier is om Azure Functions Core Tools te gebruiken. Zie func-extensies installeren voor meer informatie.

Voor alleen-portalontwikkeling moet u handmatig een extensions.csproj-bestand maken in de hoofdmap van uw functie-app. Zie Extensies handmatig installeren voor meer informatie.

Volgende stappen