Dicas de .NET
Como criar e publicar uma Azure Function em C# para consultar o mercado de ações (Parte 2)
Criando uma Azure Function para verificar preços de ações (C#)
Azure Functions em C#: consulte ações e envie por e-mail com Resend (Parte 2)
Crie uma Function em .NET com Timer Trigger, consuma a API Alpha Vantage e mande a cotação por e-mail
Neste passo a passo você vai criar uma Azure Function em C# (.NET) com Timer Trigger para consultar a cotação de ações na API Alpha Vantage e enviar um e-mail com o último fechamento usando o serviço Resend. O vídeo cobre a instalação das ferramentas, criação do projeto com Azure Functions Core Tools, configuração de secrets no local.settings.json, debug local com Azurite, parsing do JSON (System.Text.Json), montagem de HTML e envio via HTTP (sem SDK). Ao final, é mostrado o e-mail recebido com a cotação.
Continuação prática da série: publicamos a Azure Function em C# que consulta cotações (Alpha Vantage) e envia e-mails com Resend. Você verá como preparar o ambiente, criar e organizar recursos (Resource Group, Storage Account, Function App), configurar segredos (API Keys), publicar via Azure Functions Core Tools e VS Code, conferir no portal do Azure, ajustar o agendamento (CRON) e, por fim, limpar tudo com segurança.
O que você vai aprender:
- Instalar/usar Azure CLI (az) e fazer login
- Criar Resource Group, Storage Account (Standard_LRS) e Function App (Consumption, Windows, .NET/Functions v4)
- Configurar app settings (Resend e Alpha Vantage) via CLI
- Publicar com func azure functionapp publish
- Verificar recursos e logs no portal do Azure
- Ajustar CRON (NCRONTAB) para executar diariamente às 08:00
- Deploy alternativo pelo VS Code (Deploy to Azure)
- Limpeza total com az group delete (atenção!)
Pré-requisitos:
- Node.js e npm
- NET SDK 8 instalado
- VS Code com extensões C#, Azure Functions e Azure Resources
- Conta Resend com domínio verificado (para envio)
- Chave gratuita da Alpha Vantage
---
### Capítulos
00:00:00 Preparos: parar Azurite, terminal e Azure CLI
00:01:34 Instalação do Azure CLI: opções (Windows/Linux/macOS/Docker/Cloud Shell)
00:02:36 az login e seleção da assinatura
00:03:24 Por que usar Resource Group e criação com az group create
00:04:53 Criando Storage Account (nome, região, SKU Standard_LRS)
00:07:25 Criando a Function App (Consumption, runtime .NET, v4, Windows)
00:11:03 Conferindo a Function App com az functionapp list -o table
00:12:23 Listando todos os recursos do Resource Group (az resource list)
00:13:18 Publicação: visão geral e atenção aos segredos
00:14:03 Enviando app settings (Resend/Alpha Vantage) via CLI
00:16:50 Publicando com func azure functionapp publish
00:17:27 Conferindo no portal do Azure (RG, Function App, Storage, App Insights)
00:19:12 Logs e atualização de CRON; corrigindo agendamento para 08:00
00:20:53 Deploy alternativo pelo VS Code (Deploy to Azure)
00:23:38 Limpando tudo com az group delete (alertas e boas práticas)
00:24:49 Nota: envio automatizado de settings e encerramento da exclusão
Azure Functions em C#: consulte ações e envie por e-mail com Resend (Parte 2)
Crie uma Function em .NET com Timer Trigger, consuma a API Alpha Vantage e mande a cotação por e-mail
Neste passo a passo você vai criar uma Azure Function em C# (.NET) com Timer Trigger para consultar a cotação de ações na API Alpha Vantage e enviar um e-mail com o último fechamento usando o serviço Resend. O vídeo cobre a instalação das ferramentas, criação do projeto com Azure Functions Core Tools, configuração de secrets no local.settings.json, debug local com Azurite, parsing do JSON (System.Text.Json), montagem de HTML e envio via HTTP (sem SDK). Ao final, é mostrado o e-mail recebido com a cotação.
Continuação prática da série: publicamos a Azure Function em C# que consulta cotações (Alpha Vantage) e envia e-mails com Resend. Você verá como preparar o ambiente, criar e organizar recursos (Resource Group, Storage Account, Function App), configurar segredos (API Keys), publicar via Azure Functions Core Tools e VS Code, conferir no portal do Azure, ajustar o agendamento (CRON) e, por fim, limpar tudo com segurança.
O que você vai aprender:
- Instalar/usar Azure CLI (az) e fazer login
- Criar Resource Group, Storage Account (Standard_LRS) e Function App (Consumption, Windows, .NET/Functions v4)
- Configurar app settings (Resend e Alpha Vantage) via CLI
- Publicar com func azure functionapp publish
- Verificar recursos e logs no portal do Azure
- Ajustar CRON (NCRONTAB) para executar diariamente às 08:00
- Deploy alternativo pelo VS Code (Deploy to Azure)
- Limpeza total com az group delete (atenção!)
Pré-requisitos:
- Node.js e npm
- NET SDK 8 instalado
- VS Code com extensões C#, Azure Functions e Azure Resources
- Conta Resend com domínio verificado (para envio)
- Chave gratuita da Alpha Vantage
---
### Capítulos
00:00:00 Preparos: parar Azurite, terminal e Azure CLI
00:01:34 Instalação do Azure CLI: opções (Windows/Linux/macOS/Docker/Cloud Shell)
00:02:36 az login e seleção da assinatura
00:03:24 Por que usar Resource Group e criação com az group create
00:04:53 Criando Storage Account (nome, região, SKU Standard_LRS)
00:07:25 Criando a Function App (Consumption, runtime .NET, v4, Windows)
00:11:03 Conferindo a Function App com az functionapp list -o table
00:12:23 Listando todos os recursos do Resource Group (az resource list)
00:13:18 Publicação: visão geral e atenção aos segredos
00:14:03 Enviando app settings (Resend/Alpha Vantage) via CLI
00:16:50 Publicando com func azure functionapp publish
00:17:27 Conferindo no portal do Azure (RG, Function App, Storage, App Insights)
00:19:12 Logs e atualização de CRON; corrigindo agendamento para 08:00
00:20:53 Deploy alternativo pelo VS Code (Deploy to Azure)
00:23:38 Limpando tudo com az group delete (alertas e boas práticas)
00:24:49 Nota: envio automatizado de settings e encerramento da exclusão
Links
Azurite (Storage local)
https://github.com/Azure/Azurite
Azure Functions Core Tools
https://learn.microsoft.com/azure/azure-functions/functions-run-local
Timer trigger (cron)
https://learn.microsoft.com/azure/azure-functions/functions-bindings-timer
Alpha Vantage
Portal Azure
Preços Azure Functions
https://azure.microsoft.com/pt-pt/pricing/details/functions/#pricing
Resend Github
https://github.com/resend/resend-dotnet/
Resend Nuget
https://www.nuget.org/packages/Resend
Portal Resend
Instalar o AZ CLI
https://learn.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest
Email temporário
Comandos usados
az login
# criar o resource group...
az group create --name alpha-quote-rg --location eastus
# criar o storage account
az storage account create --name alphaquotestorage --location eastus --resource-group alpha-quote-rg --sku Standard_LRS
# criar a function app
az functionapp create --name alphaquotefuncapp --resource-group alpha-quote-rg --storage-account alphaquotestorage --consumption-plan-location eastus --runtime dotnet --functions-version 4 --os-type Windows
# testar se foi criado
az functionapp list --resource-group alpha-quote-rg --output table
# publicar a functionapp...
func azure functionapp publish alphaquotefuncapp
# publicar app settings...
az functionapp config appsettings set --name alphaquotefuncapp --resource-group alpha-quote-rg --settings "RESEND_API_KEY=seu_valor_aqui" "ALPHA_VANTAGE_API_KEY=seu_valor_aqui"
# deletar tudo o que foi criado...
az group delete --name alpha-quote-rg
# listar e exibir recursos
az resource list --resource-group alpha-quote-rg --output table
az resource show --name <nome> --resource-group alpha-quote-rg