Registro de las extensiones de enlace de Azure Functions
A partir de Azure Functions versión 2.x, el entorno de ejecución de Functions solo incluye desencadenadores HTTP y de temporizador de forma predeterminada. Hay disponibles otros desencadenadores y enlaces como paquetes independientes.
Las aplicaciones de funciones de la biblioteca de clases .NET usan enlaces que se instalan en el proyecto como paquetes NuGet. Los conjuntos de extensiones permiten a las aplicaciones de funciones que no son .NET utilizar los mismos enlaces sin tener que tratar con la infraestructura de .NET.
En la tabla siguiente se indica cuándo y cómo registrar los enlaces.
Entorno de desarrollo | Registro en Functions 1.x |
Registro en Functions 2.x o posterior |
---|---|---|
Portal de Azure | Automático | Automático* |
Lenguajes que no son .NET | Automático | Use conjuntos de extensiones (recomendado) o instale las extensiones de forma explícita. |
Biblioteca de clases de C# con Visual Studio | Uso de herramientas NuGet | Uso de herramientas NuGet |
Biblioteca de clases de C# con Visual Studio Code | N/D | Uso de la CLI de .NET Core Uso del Kit de desarrollo de C# |
* El portal usa conjuntos de extensiones, incluido el script de C#.
Conjuntos de extensiones
De forma predeterminada, los conjuntos de extensiones proporcionan compatibilidad de enlace con funciones en estos lenguajes:
- Java
- JavaScript
- PowerShell
- Python
- Script de C#
- Otros (controladores personalizados)
En casos poco frecuentes en los que no se pueden usar agrupaciones de extensiones, puede instalar explícitamente extensiones de enlace con el proyecto de aplicación de funciones. Los conjuntos de extensiones son compatibles con la versión 2.x y posteriores del runtime de Functions.
Los conjuntos de extensiones son una manera de agregar un conjunto predefinido de extensiones de enlace compatibles a la aplicación de funciones. Los conjuntos de extensiones tienen control de versiones. Cada versión contiene un conjunto específico de extensiones de enlace que se ha comprobado que funcionan juntas. Seleccione una versión del conjunto en función de las extensiones que necesite en la aplicación.
Al crear un proyecto de Functions que no sea .NET a partir de herramientas o en el portal, los conjuntos de extensiones ya están habilitados en el archivo host.json de la aplicación.
La sección extensionBundle
de un archivo host.json define una referencia del conjunto de extensiones, como se indica a continuación:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
Las siguientes propiedades están disponibles en extensionBundle
:
Propiedad | Descripción |
---|---|
id |
Espacio de nombres de las agrupaciones de extensiones de Microsoft Azure Functions. |
version |
El rango de versión de la agrupación a instalar. Functions Runtime siempre elige la máxima versión permitida definida por el rango o intervalo de versiones. Por ejemplo, un rango de valor version de [4.0.0, 5.0.0) permite todas las versiones del conjunto desde la 4.0.0 en adelante, pero sin incluir la 5.0.0. Para más información, consulte la notación de intervalo para especificar intervalos de versiones. |
En la tabla siguiente se enumeran los rangos de versiones disponibles actualmente del conjunto predeterminado Microsoft.Azure.Functions.ExtensionBundle y los vínculos a las extensiones que incluyen.
Versión del conjunto | Versión en host.json | Extensiones incluidas |
---|---|---|
1.x | [1.*, 2.0.0) |
Consulte el archivo extensions.json utilizado para generar el conjunto. |
2.x | [2.*, 3.0.0) |
Consulte el archivo extensions.json utilizado para generar el conjunto. |
3.x | [3.3.0, 4.0.0) |
Consulte el archivo extensions.json utilizado para generar el conjunto. |
4.x | [4.0.0, 5.0.0) |
Consulte el archivo extensions.json utilizado para generar el conjunto. |
Nota
Aunque host.json admite rangos personalizados para version
, debe usar un valor de rango de versión de esta tabla, como [4.0.0, 5.0.0)
. Para obtener una lista completa de las versiones de la agrupación de extensiones y las versiones de extensión en cada versión, consulte la página de lanzamiento de agrupaciones de extensiones.
Instalación explícita de extensiones
En el caso de los proyectos de biblioteca de clases de C# compilados (en proceso y de proceso de trabajo aislado), instale los paquetes de NuGet para las extensiones que necesitaría normalmente. Para obtener ejemplos, consulte la guía para desarrolladores de Visual Studio Code o la guía para desarrolladores de Visual Studio. Consulte la página de versión de paquetes de extensiones para revisar las combinaciones de versiones de extensión que son compatibles con la comprobación.
Para lenguajes que no sean .NET y el script de C#, cuando no se pueden usar conjuntos de extensiones, debe instalar manualmente las extensiones de enlace necesarias en el proyecto local. La manera más fácil es usar Azure Functions Core Tools. Para obtener más información, consulte instalación de extensiones de Functions.
Para el desarrollo exclusivo en el portal, debe crear manualmente un archivo extensions.csproj en la raíz de la aplicación de funciones. Para obtener más información, consulte Instalación manual de extensiones.