Como Enviar E‑mails Usando a API Graph do Microsoft 365 em Aplicações .NET
Integre recursos seguros de envio de e‑mail em suas aplicações .NET com suporte para composição de mensagens, autenticação OAuth2 e anexos de arquivos.
Download grátis julgamentoEnviar um E‑mail em C# com a API Graph do Microsoft 365
Integrar a API Microsoft Graph em aplicações .NET permite que desenvolvedores simplifiquem o processo de envio de mensagens via serviços do Microsoft 365. Aspose.Email para .NET simplifica esse processo, oferecendo recursos avançados como manipulação de anexos, rastreamento e comunicação segura. A biblioteca permite criar e entregar comunicações de e‑mail personalizadas e de alto desempenho diretamente de suas aplicações .NET.
Principais Vantagens de Usar Aspose.Email com Microsoft Graph
Sem Necessidade de SMTP ou Autenticação Básica - Use autenticação segura baseada em tokens modernos (OAuth2).
Integração Microsoft 365 & Outlook - Conecte-se facilmente a caixas de correio e serviços do Microsoft 365.
Pronta para Empresas e Desenvolvedores .NET - Projetada para escalabilidade, confiabilidade e fluxos de trabalho corporativos de e‑mail.
API Totalmente Gerenciada - Sem Dependências Externas - Biblioteca .NET tudo-em-um, sem necessidade de SDK Graph ou clientes de terceiros.
Suporta .NET Framework & .NET Core / .NET 6+ - Compatível com ambientes .NET modernos e legados.
Implantação Rápida com Configuração Mínima - API fácil de usar com código de exemplo para implementação rápida.
Exemplo de Código
Experimente a facilidade de integrar o envio de e‑mail do Microsoft 365 em sua aplicação .NET com o cliente Graph embutido da Aspose.Email.
Código de exemplo para enviar email - C#
var client = GraphClient.GetClient(authProvider);
var message = new MailMessage(...);
client.Send(message);
Como Funciona
Microsoft Graph é uma API web RESTful que permite acesso aos serviços Microsoft 365, incluindo a capacidade de enviar e‑mails. Ao enviar e‑mails via Microsoft Graph, as requisições são enviadas usando HTTP POST para o endpoint /sendMail, juntamente com a carga da mensagem. Essa carga normalmente é um objeto JSON que contém o conteúdo da mensagem (destinatários, assunto, corpo etc.) e quaisquer arquivos anexados.
Ao receber a requisição, o MS Graph a processa e responde com um código de status HTTP. Uma operação de envio bem-sucedida retorna a resposta 202 Accepted, indicando que a mensagem foi enfileirada para entrega. Manipular essas respostas permite que os desenvolvedores garantam comunicação bem-sucedida ou depurem quaisquer problemas que possam surgir.
Autenticando Requisições ao Microsoft Graph
Chamar o Microsoft Graph não é tão simples quanto enviar uma requisição HTTP—você primeiro precisa lidar com a autenticação. A API Graph é protegida pelo Azure Active Directory (Azure AD), o que significa que você deve obter um token de acesso antes de fazer qualquer solicitação. Esse token de acesso especifica quais operações você tem permissão para executar, com base nas permissões concedidas durante o processo de autenticação.
Para autenticar, primeiro você precisa configurar um registro de aplicativo no Azure AD, definir as permissões necessárias e então solicitar um token de acesso usando o fluxo OAuth apropriado. Depois de obter o token, inclua-o no Authorization cabeçalho de suas requisições.
Aspose.Email para .NET simplifica o processo de obtenção e gerenciamento do token de acesso, garantindo que a aplicação possa interagir de forma segura com o Microsoft Graph. Implementando seu ITokenProvider interface, os desenvolvedores podem recuperar de forma eficiente o token OAuth 2.0 necessário para autenticação. Uma vez que o registro da aplicação tenha sido configurado no portal Azure e as permissões necessárias, como Mail.Send, tenham sido concedidas, os desenvolvedores podem usar os recursos da biblioteca para incorporar funcionalidades extensas de e‑mail em suas aplicações.
Comece com alguns passos essenciais:
- Registre sua aplicação no portal Azure e conceda permissões como
Mail.Sendpara enviar e‑mails. - Obter um Token de Acesso: Implemente o ITokenProvider interface do Aspose.Email para .NET para recuperar o token OAuth 2.0 necessário para autenticação.
- Instale Aspose.Email para .NET via NuGet ou baixando seu DLL arquivo.
Seguindo estas etapas, você estará bem preparado para começar a codificar.
Entendendo Requisição e Resposta do Microsoft Graph
Requisição: Os dados como assunto da mensagem, corpo, detalhes dos destinatários e anexos são estruturados em formato JSON. Quando o método Send é chamado, esses dados são serializados e enviados como uma requisição POST para o endpoint Microsoft Graph /sendMail.
Resposta: A resposta da Graph API é retornada como um código de status. Uma resposta 202 Accepted indica transmissão bem‑sucedida, enquanto códigos de erro como 401 Unauthorized ou 403 Forbidden podem indicar problemas de autenticação ou permissões.
A biblioteca .NET oferece recursos incorporados para formar, enviar requisições e analisar respostas ao interagir com serviços externos como o Microsoft Graph. Essas funcionalidades permitem que os desenvolvedores simplifiquem a comunicação com os serviços Microsoft 365 (por exemplo, Outlook, Calendar, Contacts) sem precisar criar manualmente requisições HTTP ou analisar respostas JSON brutas.
Formando Requisições: Aspose.Email simplifica a criação de requisições ao fornecer classes e métodos específicos que abstraem a complexidade da formação das mesmas. Por exemplo, os desenvolvedores podem interagir com e‑mails, calendários e contatos através de APIs intuitivas sem construir manualmente as requisições necessárias ao Graph.
Enviando Requisições: A biblioteca inclui mecanismos incorporados para enviar requisições diretamente a serviços como o Microsoft Graph. Em vez de lidar manualmente com autenticação e métodos HTTP, o Aspose.Email gerencia o processo nos bastidores. Isso inclui a adição de cabeçalhos necessários como tokens de autorização e tipos de conteúdo, garantindo que a requisição esteja formatada corretamente para comunicação bem‑sucedida com os serviços Microsoft.
Analisando Respostas: Com suporte à análise de respostas, pode converter respostas JSON ou XML brutas em objetos estruturados, como MailMessage, CalendarEvent ou Contact. Isso elimina a necessidade de os desenvolvedores lidarem diretamente com a análise de JSON. Os dados analisados podem ser usados imediatamente na aplicação, tornando o processo de integração mais fluido e eficiente.
Esses recursos permitem que os desenvolvedores se concentrem mais na lógica de negócio ao invés de gerenciar as complexidades subjacentes de interagir com serviços de e‑mail.
Exemplo Completo de Código C# para Enviar E‑mails com OAuth2 e Aspose.Email
O exemplo a seguir mostra o processo completo de envio de um e‑mail usando a API Graph via Aspose.Email para .NET. Algumas linhas de código permitem gerar um token de acesso OAuth2, inicializar o cliente Graph, compor uma mensagem e enviá‑la:
- Crie uma instância de IGraphClient chamando GetClient método.
- Inicialize um objeto eml de MailMessage classe, definindo suas propriedades.
- Envie a mensagem usando o Enviar método da biblioteca.
Exemplo completo de integração OAuth2 e Microsoft Graph
using Aspose.Email;
using Aspose.Email.Clients.Graph;
// Generate the access token
AccessTokenProvider tokenProvider = new AccessTokenProvider();
// Create a Graph client
IGraphClient client = GraphClient.GetClient(tokenProvider, "tenant ID");
// Create a new message
var eml = new MailMessage(fromAddress, toAddress, subject, body);
// Send message
client.Send(eml);
Enviar E‑mails com Anexos
Enviar e‑mails com anexos via Microsoft Graph é simples e eficiente com a biblioteca Aspose.Email para .NET. Os anexos podem ser de qualquer tipo de arquivo, como documentos, imagens ou PDFs, que são enviados junto com a mensagem de e‑mail. Isso é particularmente útil para compartilhar recursos como relatórios, apresentações ou outros documentos importantes diretamente através de sua aplicação .NET.
No trecho de código a seguir, os anexos são adicionados ao objeto MailMessage antes de o e‑mail ser enviado:
Código de exemplo para enviar email - C#
// Add attachments to the message
Attachment attachment = new Attachment("path_to_attachment");
eml.Attachments.Add(attachment);
Como os Anexos são Processados
- Carregando Anexos: O anexo é carregado a partir do caminho de arquivo especificado ("path_to_attachment"), que pode ser um arquivo local ou um fluxo. O Anexo classe permite adicionar qualquer tipo de arquivo como anexo, tornando-o altamente flexível.
- Adicionando ao E‑mail: Uma vez criado o anexo, ele é adicionado à mensagem de e‑mail usando o Attachments.Add() método. Esse método anexa o arquivo ao MailMessage coleção de anexos do objeto, que é incluída automaticamente quando a mensagem é enviada via MS Graph.
- Enviando o E‑mail: Uma vez que os anexos foram adicionados à mensagem, o Enviar método da IGraphClient interface envia o e‑mail com todos os arquivos anexados.
Manipulando Múltiplos Anexos
Você pode facilmente adicionar múltiplos anexos repetindo o processo para cada arquivo. Veja como anexar mais de um arquivo:
Attachment attachment1 = new Attachment("file1.pdf");
Attachment attachment2 = new Attachment("image.png");
eml.Attachments.Add(attachment1);
eml.Attachments.Add(attachment2);
Limites de Tamanho de Anexos
É importante notar que o Microsoft Graph impõe limites de tamanho para mensagens de e‑mail. O tamanho total de um e‑mail, incluindo anexos, não deve exceder 25 MB. Se precisar enviar arquivos maiores, considere enviá‑los para um serviço de armazenamento em nuvem (como OneDrive) e enviar o link do arquivo em vez disso.
Quer Mais? Explore o Suporte Completo ao Microsoft Graph
Aspose.Email para .NET oferece uma integração estendida ao Microsoft 365 via API Graph. Você também pode:
Gerencie pastas, mensagens e rascunhos
Trabalhe com anexos e categorias
Gerencie contatos, eventos de calendário, notebooks e mais
Explore tudo Recursos do Microsoft Graph.
Instale a API .NET
Dedique um minuto para instalar a biblioteca em seu projeto e comece a criar soluções de e‑mail Microsoft 365 seguras e escaláveis com Aspose.Email para .NET. Escolha a forma mais conveniente:
- Use NuGet Gerenciador de Pacotes
- Referencie o necessário assemblies
- Ou simplesmente use o comando a seguir no Console do Gerenciador de Pacotes no Visual Studio:
Comando
PM> Install-Package Aspose.Email