Quickstart: Crie a sua primeira função C# em Azure utilizando Visual Studio

Funções do Azure permite executar o seu código C# num ambiente sem servidor em Azure.

Neste artigo, vai aprender a:

  • Utilize Visual Studio para criar um projeto de biblioteca de classes C# em .NET 6.0.
  • Criar uma função que responda a pedidos HTTP.
  • Executar o seu código localmente para verificar o comportamento da função.
  • Implemente o seu projeto de código para Funções do Azure.

Este artigo suporta a criação de ambos os tipos de funções C# compiladas:

Modelo de execução Description
Em processo O seu código de função funciona no mesmo processo que o processo de anfitrião de Funções. Suporta tanto .NET Core 3.1 e .NET 6.0. Para saber mais, consulte as funções da biblioteca da classe Develop C# utilizando Funções do Azure.
Processo isolado O seu código de função funciona num processo separado de trabalhador .NET. Suporta tanto .NET 5.0 como .NET 6.0. Para saber mais, consulte Desenvolver funções de processo isoladas em C#.

Completar este quickstart incorre num pequeno custo de alguns usd ou menos na sua conta Azure.

Há também uma versão Visual Studio baseada em código deste artigo.

Pré-requisitos

Criar um projeto de aplicação de função

O modelo de projeto Funções do Azure em Visual Studio cria um projeto de biblioteca de classe C que pode publicar para uma aplicação de função em Azure. Pode utilizar uma aplicação de função para agrupar funções como uma unidade lógica para facilitar a gestão, implementação, escala e partilha de recursos.

  1. A partir do menu Visual Studio, selecione FileNew>> Project.

  2. Na Criar um novo projeto, introduza funções na caixa de pesquisa, escolha o modelo de Funções do Azure e, em seguida, selecione Seguinte.

  3. Em Configurar o seu novo projeto, insira um Project nome para o seu projeto e, em seguida, selecione Criar. O nome da aplicação de funções deve ser válido como um espaço de nomes C#. Portanto, não use sublinhados, hífenes ou outros carateres não alfanuméricos.

  4. Para criar uma nova Funções do Azure configurações de aplicação, utilize os valores no quadro seguinte:

    Definição Valor Descrição
    Versão .NET .NET 6 Este valor cria um projeto de função que funciona em processo com a versão 4.x do tempo de execução Funções do Azure. Também pode escolher .NET 6 (isolado) para criar um projeto que funciona num processo de trabalho separado. As Funções do Azure 1.x suportam o .NET Framework. Para mais informações, consulte Funções do Azure versões de tempo de execução.
    Modelo de função Acionador HTTP Este valor cria uma função desencadeada por um pedido HTTP.
    conta Armazenamento (AzureWebJobsStorage) Armazenamento emulador Como uma aplicação de função em Azure requer uma conta de armazenamento, uma é atribuída ou criada quando publica o seu projeto para o Azure. Um gatilho HTTP não utiliza uma cadeia de ligação de conta Azure Armazenamento; todos os outros tipos de gatilho requerem uma cadeia de ligação de conta Azure Armazenamento válida. Quando selecionar esta opção, é utilizado o emulador Azurite.
    Nível de autorização Anónimo A função criada pode ser acionada por qualquer cliente sem fornecer uma chave. Esta definição de autorização torna mais fácil testar a função nova. Para obter mais informações sobre chaves e autorização, consulte as chaves de autorização e as ligações HTTP e webhook.

    Azure Functions project settings

    Certifique-se de definir o nível de Autorização para Anónimo. Se escolher o nível predefinido de Função, é-lhe exigido que apresente a chave de função nos pedidos de acesso ao ponto final da sua função.

  5. Selecione Criar para criar o projeto de função e a função de gatilho HTTP.

Visual Studio cria um projeto e classe que contém código de placa de caldeira para o tipo de função do gatilho HTTP. O código automático envia uma resposta HTTP que inclui um valor da cadeia de consulta ou de corpo de pedido. O HttpTrigger atributo especifica que a função é desencadeada por um pedido HTTP.

Renomear a função

O FunctionName atributo método define o nome da função, que por padrão é gerada como Function1. Uma vez que a ferramenta não permite que se sobreponha ao nome da função predefinida quando criar o seu projeto, desem um minuto para criar um nome melhor para a classe de função, arquivo e metadados.

  1. Em Explorador de Ficheiros, clique com .cs ficheiro Function1 e rebatize-o para HttpExample.cs.

  2. No código, rebatize a classe Function1 para HttpExample.

  3. HttpTrigger No método denominado Run, rebatize o método a FunctionNameHttpExample.

A definição de função deve agora parecer-se com o seguinte código:

[FunctionName("HttpExample")]
public static async Task<IActionResult> Run(
    [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
    ILogger log)

Agora que renomeou a função, pode testá-la no seu computador local.

Executar a função localmente

Visual Studio integra-se com Funções do Azure Ferramentas Core para que possa testar as suas funções localmente utilizando o tempo de execução completo Funções do Azure.

  1. Para executar a sua função, prima F5 em Visual Studio. Pode ser necessário ativar uma exceção de firewall para que as ferramentas possam lidar com pedidos HTTP. Os níveis de autorização nunca são aplicados quando se executa uma função local.

  2. Copie o URL da sua função na saída do tempo de execução das funções do Azure.

    Azure local runtime

  3. Cole o URL do pedido HTTP na barra de endereço do browser. Anexar o fio ?name=<YOUR_NAME> de consulta a este URL e executar o pedido. A imagem a seguir mostra a resposta no navegador ao pedido GET local devolvido pela função:

    Function localhost response in the browser

  4. Para parar de depurar, pressione oShiftF5+ em Visual Studio.

Depois de verificar que a função é executada corretamente no computador local, deve publicar o projeto no Azure.

Publicar o projeto no Azure

Antes de poder publicar o seu projeto, tem de ter uma aplicação de função na sua subscrição Azure. Visual Studio publicação cria uma aplicação de função para si na primeira vez que publica o seu projeto.

  1. Em Explorador de Soluções, clique com o botão direito no projeto e selecione Publicar e em Target, selecione Azuree seguinte.

  2. Para o alvo específico, escolha Azure Function App (Windows), que cria uma aplicação de função que funciona no Windows.

  3. Em Instância de Função, escolha Criar uma nova Função Azure...

    Create a new function app instance

  4. Criar um novo exemplo utilizando os valores especificados no quadro seguinte:

    Definição Valor Descrição
    Nome Nome globalmente exclusivo Nome que identifica exclusivamente a sua nova aplicação de funções. Aceite este nome ou insira um novo nome. Os caracteres válidos são: a-z, 0-9e -.
    Subscrição A sua subscrição A subscrição do Azure que deve utilizar. Aceite esta subscrição ou selecione uma nova da lista de drop-down.
    Grupo de recursos Nome do seu grupo de recursos O grupo de recursos para criar a sua aplicação de função. Selecione um grupo de recursos existente da lista de drop-down ou escolha Novo para criar um novo grupo de recursos.
    Tipo de Plano Consumo Quando publica o seu projeto numa aplicação de função que funciona num plano de Consumo, paga apenas para execuções da sua aplicação de funções. Outros planos de hospedagem incorrem em custos mais elevados.
    Localização Localização do serviço de aplicações Escolha uma Localização numa região próxima ou noutros serviços a que as suas funções tenham acesso.
    Armazenamento do Azure Conta de armazenamento para fins gerais Uma conta Azure Armazenamento é exigida pelo tempo de funcionamento das Funções. Selecione Novo para configurar uma conta de armazenamento para fins gerais. Também pode escolher uma conta existente que satisfaça os requisitos da conta de armazenamento.

    Create App Service dialog

  5. Selecione Criar para criar uma aplicação de função e seus recursos relacionados em Azure. O estado da criação de recursos é mostrado na parte inferior esquerda da janela.

  6. No caso de Funções, certifique-se de que o Run do ficheiro de embalagem é verificado. A sua aplicação de função é implementada utilizando o zip deploy com o modo Run-From-Package ativado. Este é o método de implementação recomendado para o seu projeto de funções, uma vez que resulta num melhor desempenho.

    Finish profile creation

  7. Selecione Terminar e na página Publicar, selecione Publicar para implementar o pacote que contém os seus ficheiros de projeto para a sua nova aplicação de função em Azure.

    Após a implementação completar o URL raiz da aplicação de função em Azure é mostrado no separador Publicar .

  8. No separador Publicar, escolha Gerir no Cloud Explorer. Isto abre a nova aplicação de função Azure recurso no Cloud Explorer.

    Publish success message

    O Cloud Explorer permite-lhe utilizar Visual Studio para visualizar o conteúdo do site, iniciar e parar a aplicação de função, e navegar diretamente para funcionar recursos de aplicações no Azure e no portal do Azure.

Verifique a sua função em Azure

  1. No Cloud Explorer, a sua nova aplicação de função deve ser selecionada. Caso contrário, expanda os serviços de aplicação de subscrição > e selecione a sua nova aplicação de função.

  2. Clique com o botão direito na aplicação de função e escolha Abrir no Browser. Isto abre a raiz da sua aplicação de função no seu navegador web predefinido e exibe a página que indica que a sua aplicação de função está em execução.

    Function app running

  3. Na barra de endereços do navegador, apenugue a cadeia /api/HttpExample?name=Functions ao URL base e execute o pedido.

    O URL que chama a sua função de gatilho HTTP está no seguinte formato:

    http://<APP_NAME>.azurewebsites.net/api/HttpExample?name=Functions

  4. Vá a este URL e veja uma resposta no navegador ao pedido remoto GET devolvido pela função, que parece ser o seguinte exemplo:

    Function response in the browser

Limpar os recursos

Outros guias de introdução desta coleção têm por base este guia de introdução. Se planeia trabalhar com quickstarts subsequentes, tutoriais ou com qualquer um dos serviços que criou neste arranque rápido, não limpe os recursos.

Os recursos no Azure referem-se a aplicações de funções, funções, contas de armazenamento e assim sucessivamente. Estão agrupados em grupos de recursos, e podes apagar tudo num grupo, eliminando o grupo.

Criou recursos para concluir estes guias de introdução. Poderá ser-lhe cobrado estes recursos, dependendo do seu estado da conta e dos preços dos serviços.

Utilize as seguintes medidas para eliminar a aplicação de função e os seus recursos relacionados para evitar incorrer em custos adicionais.

  1. No Cloud Explorer, expanda os serviços de aplicação de subscrição>, clique com o botão direito na sua aplicação de função e escolha Abrir no Portal.

  2. Na página de aplicação da função, selecione o separador 'Vista Geral ' e, em seguida, selecione o link no grupo De recursos.

    Select the resource group to delete from the function app page

  3. Na página do grupo Recursos , reveja a lista de recursos incluídos e verifique se são eles que pretende eliminar.

  4. Selecione Eliminar grupo de recursos e siga as instruções.

    A eliminação pode demorar alguns minutos. Quando terminar, é apresentada uma notificação durante alguns segundos. Também pode selecionar o ícone de sino na parte superior da página para ver a notificação.

Passos seguintes

Neste arranque rápido, utilizou Visual Studio para criar e publicar uma aplicação de função C# em Azure com uma simples função de gatilho HTTP.

Avance para o próximo artigo para saber como adicionar um Azure Armazenamento fila de ligação à sua função: