Registrar extensões de vinculação do Azure Functions
A partir do Azure Functions versão 2.x, o tempo de execução das funções inclui apenas gatilhos HTTP e de temporizador por padrão. Outros gatilhos e ligações estão disponíveis como pacotes separados.
Os aplicativos de funções da biblioteca de classes .NET usam associações instaladas no projeto como pacotes NuGet. Os pacotes de extensão permitem que os aplicativos de funções non-.NET usem as mesmas associações sem ter que lidar com a infraestrutura .NET.
A tabela a seguir indica quando e como você registra associações.
Ambiente de desenvolvimento | Registo em Funções 1.x |
Registo no Functions 2.x ou posterior |
---|---|---|
Portal do Azure | Automático | Automático* |
Non-.NET línguas | Automático | Usar pacotes de extensões (recomendado) ou instalar extensões explicitamente |
Biblioteca de classes C# usando o Visual Studio | Usar ferramentas do NuGet | Usar ferramentas do NuGet |
Biblioteca de classes C# usando o Visual Studio Code | N/A | Usar a CLI do .NET Core Usar o C# Dev Kit |
* O portal usa pacotes de extensão, incluindo script C#.
Pacotes de extensão
Por padrão, os pacotes de extensão fornecem suporte de vinculação para funções nestes idiomas:
- Java
- JavaScript
- PowerShell
- Python
- Script C#
- Outros (manipuladores personalizados)
Em casos raros em que os pacotes de extensão não podem ser usados, você pode instalar explicitamente extensões de vinculação com seu projeto de aplicativo de função. Os pacotes de extensão são suportados para a versão 2.x e versão posterior do tempo de execução do Functions.
Os pacotes de extensões são uma maneira de adicionar um conjunto predefinido de extensões de vinculação compatíveis ao seu aplicativo de função. Os pacotes de extensão são versionados. Cada versão contém um conjunto específico de extensões de vinculação que são verificadas para funcionar em conjunto. Selecione uma versão do pacote com base nas extensões que você precisa em seu aplicativo.
Quando você cria um projeto do non-.NET Functions a partir de ferramentas ou no portal, os pacotes de extensão já estão habilitados no arquivo host.json do aplicativo.
Uma referência de extensionBundle
pacote de extensão é definida pela seção em um host.json da seguinte maneira:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
As propriedades seguintes estão disponíveis em extensionBundle
:
Property | Description |
---|---|
id |
O espaço de nomes para os pacotes de extensões das Funções do Microsoft Azure. |
version |
O intervalo de versões do pacote a ser instalado. O runtime das Funções escolhe sempre a versão máxima permitida definida pelo intervalo de versões. Por exemplo, um version intervalo de valores permite todas as versões do [4.0.0, 5.0.0) pacote de 4.0.0 até, mas não incluindo, 5.0.0. Para obter mais informações, veja a notação de intervalo para especificar intervalos de versões. |
A tabela a seguir lista os intervalos de versões atualmente disponíveis dos pacotes padrão Microsoft.Azure.Functions.ExtensionBundle e links para as extensões que eles incluem.
Versão do pacote | Versão em host.json | Extensões incluídas |
---|---|---|
1.x | [1.*, 2.0.0) |
Consulte extensions.json usado para gerar o pacote. |
2.x | [2.*, 3.0.0) |
Consulte extensions.json usado para gerar o pacote. |
3.x | [3.3.0, 4.0.0) |
Consulte extensions.json usado para gerar o pacote. |
4.x | [4.0.0, 5.0.0) |
Consulte extensions.json usado para gerar o pacote. |
Nota
Embora host.json ofereça suporte a intervalos personalizados para version
, você deve usar um valor de intervalo de versão desta tabela, como [4.0.0, 5.0.0)
. Para obter uma lista completa das versões do pacote de extensão e das versões de extensão em cada versão, consulte a página de lançamento dos pacotes de extensão.
Instalar extensões explicitamente
Para projetos de biblioteca de classes C# compilados (processo de trabalho em processo e isolado), instale os pacotes NuGet para as extensões de que precisa normalmente. Para obter exemplos, consulte o guia do desenvolvedor do Visual Studio Code ou o guia do desenvolvedor do Visual Studio. Consulte a página de lançamento de pacotes de extensão para analisar as combinações de versões de extensão que são comprovadamente compatíveis.
Para linguagens non-.NET e script C#, quando você não pode usar pacotes de extensão, você precisa instalar manualmente as extensões de vinculação necessárias em seu projeto local. A maneira mais fácil é usar as Ferramentas Principais do Azure Functions. Para obter mais informações, consulte instalação de extensões func.
Para desenvolvimento somente portal, você precisa criar manualmente um arquivo extensions.csproj na raiz do seu aplicativo de função. Para saber mais, consulte Instalar extensões manualmente.