Aspose.Email  para .NET

Enviar email via SMTP em C#

Uma forma segura e flexível de enviar emails em C# usando SMTP, OAuth e TLS. Inclui suporte assíncrono e compatibilidade multiplataforma.

  Download grátis julgamento

Cliente SMTP C# para entrega segura de email

SMTP (Simple Mail Transfer Protocol) é o protocolo padrão para enviar email através de redes. Ele opera na camada de aplicação do modelo TCP/IP, garantindo transmissão confiável e eficiente de dados entre servidores, dispositivos e usuários.

Aspose.Email para .NET simplifica o uso do protocolo em aplicações .NET com uma API segura e moderna. A biblioteca fornece uma API moderna e rica em recursos SmtpClient projetado para atender às necessidades das aplicações seguras e de alto desempenho de hoje. Como uma alternativa poderosa ao obsoleto System.Net.Mail.SmtpClient, simplifica a transmissão de email em ambientes .NET ao abstrair operações complexas a nível de protocolo e oferecer funcionalidade robusta para entrega segura e flexível.

Com suporte a protocolos modernos como OAuth 2.0 e SSL/TLS, operações async sem interrupções, e compatibilidade entre plataformas, é uma solução ideal para desenvolvedores que constroem sistemas escaláveis sem se preocupar com a implementação de baixo nível da mecânica SMTP.

Principais recursos do cliente SMTP Aspose.Email:

  • Autenticação OAuth 2.0 para envio seguro baseado em token

  • Criptografia SSL/TLS com negociação de segurança automática ou configurável

  • Envio assíncrono para operações não bloqueantes em serviços web e de background

  • Suporte multiplataforma em Windows, Linux e macOS

  • Métodos flexíveis de entrega: rede, diretório de coleta ou serviço SMTP IIS

  • Suporte total a proxy para operar com segurança em ambientes restritos

  • Manipulação rica de formatos incluindo MSG, EML, MHT, PST e outros

  • Processamento integrado de mensagens: analisar, manipular e gerenciar o conteúdo do email

  • API simples e de alto nível que abstrai as complexidades do protocolo SMTP

Concentre-se em criar o conteúdo e a lógica de negócios, enquanto Aspose.Email gerencia de forma confiável a comunicação com o servidor, formatação de mensagens e entrega segura. A biblioteca oferece todas as classes e métodos necessários para fazer as configurações desejáveis em C#. É uma biblioteca poderosa que permite trabalhar com mensagens e fornece funcionalidades para enviar, receber e manipulá-las. Desenvolvedores .NET podem aproveitar suas capacidades para alcançar um encaminhamento de email bem-sucedido.

Exemplo C#: Enviar Email usando o Cliente SMTP

O envio de email SMTP em C# é simplificado ao tratar internamente a formatação da mensagem, conexão ao servidor, criptografia e autenticação. Os desenvolvedores não precisam mais gerenciar manualmente os detalhes de baixo nível do protocolo SMTP – basta configurar o cliente e enviar. Isso facilita a implementação de recursos de email em aplicações ASP.NET e .NET usando a sintaxe familiar de C#.

  1. Criar uma mensagem usando o MailMessage classe.

  2. Configure o cliente SMTP com endereço do servidor, porta, credenciais e configurações de criptografia.

  3. Enviar a mensagem usando SmtpClient.Send().

Código de exemplo para enviar email - C#

// Create a message
MailMessage message = new MailMessage();
message.From = new MailAddress("sender@example.com");
message.To.Add("recipient@example.com");
message.Subject = "Test Email";
message.Body = "This is a test email sent using Aspose.Email SMTP client.";

// Set up the SMTP client
SmtpClient client = new SmtpClient("smtp.example.com", 587);
client.Username = "your_smtp_username";
client.Password = "your_smtp_password";
client.SecurityOptions = SecurityOptions.Auto; // SSL/TLS negotiation

// Send the email
try
{
    client.Send(message);
    Console.WriteLine("Email sent successfully!");
}
catch (SmtpException ex)
{
    Console.WriteLine("Failed to send email: " + ex.Message);
}

Este exemplo de cliente SMTP C# usa a porta 587 (STARTTLS) e negocia automaticamente criptografia SSL/TLS segura. É totalmente compatível com provedores SMTP populares como Gmail, Outlook ou servidores de email corporativos. Para projetos ASP.NET, envio assíncrono com SendAsync() também é suportado.

Enviar Email Assincronamente via SMTP em C#

O envio assíncrono é essencial para aplicações web de alto desempenho, especialmente quando servidores SMTP podem demorar a responder ou a tentar novamente a entrega. Aspose.Email para .NET suporta operações SMTP assíncronas usando o padrão Task-based Asynchronous Pattern (TAP).

O exemplo de código a seguir demonstra como criar uma mensagem e prepará-la para envio usando um método assíncrono com SMTP:

Exemplo de código para enviar mensagens assíncronamente

// Create and send a message
var message = new MailMessage("from@domain.com", "to@domain.com", "Async Subject", "Async Body");
var sendOptions = SmtpSend.Create();
sendOptions.AddMessage(message);

await client.SendAsync(sendOptions);
Console.WriteLine("Email sent asynchronously.");

Para mais informações e exemplos de código, consulte o Cliente SMTP para Enviar Emails, Encaminhar Mensagens e Realizar Mail Merge em C# na nossa documentação do usuário.

Enviar Email usando OAuth 2.0

Servidores SMTP modernos – especialmente os da Microsoft (Outlook 365) e Google – exigem OAuth 2.0 para autenticação segura sem senha. Aspose.Email para .NET suporta totalmente o envio de mensagens com tokens OAuth 2.0, eliminando a necessidade de armazenar credenciais de usuário.

Experimente o exemplo de código a seguir que demonstra como autenticar com OAuth e enviar uma mensagem:

Autenticação OAuth 2.0 - C#

// Set up OAuth2 credentials
var tokenProvider = new TokenProvider(clientId, tenantId, redirectUri, scopes);

// Create the SMTP client using OAuth2 and connect
var client = await SmtpClient.CreateAsync("smtp.office365.com", username, tokenProvider, 587);

// Compose and send the message
var message = new MailMessage("sender@domain.com", "recipient@domain.com", "OAuth Subject", "Secure email body");
var options = SmtpSend.Create();
options.AddMessage(message);

await client.SendAsync(options);
Console.WriteLine("Message sent securely via OAuth 2.0.");

Instalar Aspose.Email para .NET

Para começar a usar a biblioteca, você precisa instalá-la em seu projeto. A maneira mais fácil de fazer isso é usar Gerenciador de Pacotes NuGet:

Opção 1: Usando o Visual Studio

  1. Abra seu projeto C# no Visual Studio.

  2. Clique com o botão direito no nome do projeto no Solution Explorer e selecione Gerenciar Pacotes NuGet.

  3. Pesquise por Aspose.Email e clique em Instalar.

Opção 2: Usando .NET CLI

Execute o seguinte comando em seu terminal:

dotnet add package Aspose.Email

Compatibilidade com .NET Framework, .NET Core e .NET 5/6/7+ a torna ideal para aplicações modernas de desktop, web e baseadas em nuvem.

Descubra Mais com Aspose.Email para .NET

Além do SMTP, a biblioteca permite o processamento completo de e‑mail – desde a criação e análise de mensagens até o gerenciamento de arquivos PST/OST, trabalhando com Microsoft Exchange, e integrando com Microsoft Graph. Suporta mala direta, agendamento de compromissos e conversões complexas (EML ↔ MSG, MBOX ↔ PST, etc.), tudo sem precisar do Microsoft Outlook ou dependências de interop.

Explore tudo o que você pode criar: Ver Lista Completa de Recursos