Início rápido
Início rápido
Esta página contém três exemplos independentes que você pode copiar para um projeto de console .NET 8
e executar imediatamente. Cada exemplo cobre um fluxo de trabalho central da biblioteca.
Pré-requisitos
dotnet new console -n EmailDemo
cd EmailDemo
dotnet add package Aspose.Email.FossExemplo 1 — Ler um arquivo MSG
Abra um arquivo Outlook .msg e imprima o assunto, o remetente, os destinatários e os anexos.
using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine($"Subject: {message.Subject}");
Console.WriteLine($"From: {message.SenderName} <{message.SenderEmailAddress}>");
foreach (var recipient in message.Recipients)
Console.WriteLine($" To: {recipient.DisplayName} <{recipient.EmailAddress}>");
foreach (var attachment in message.Attachments)
Console.WriteLine($" Attachment: {attachment.Filename} ({attachment.MimeType})");Exemplo 2 — Criar e Salvar uma Mensagem
Construa um e‑mail completo com remetente, destinatários e um anexo, e então grave‑o em um arquivo MSG.
using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.Create("Quarterly Update", "Please see the attached report.");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
message.AddRecipient("carol@example.com", "Carol", MapiMessage.RecipientTypeCc);
message.AddAttachment("report.pdf", File.ReadAllBytes("report.pdf"), "application/pdf");
message.Save("quarterly-update.msg");Verifique o resultado lendo-o novamente:
using var msg = MapiMessage.FromFile("quarterly-update.msg");
Console.WriteLine(msg.Subject); // Quarterly Update
Console.WriteLine(msg.Attachments.Count); // 1Exemplo 3 — Converter entre EML e MSG
Carregue um arquivo .eml padrão (RFC 5322 / MIME) e salve‑o como Outlook MSG, depois converta de volta.
using System.IO;
using Aspose.Email.Foss.Msg;
// EML → MSG
using var emlInput = File.OpenRead("incoming.eml");
var message = MapiMessage.LoadFromEml(emlInput);
message.Save("incoming.msg");
// MSG → EML (round-trip)
message.SaveToEml("roundtrip.eml");Assunto, corpo, corpo HTML, remetente, destinatários e anexos são todos preservados durante o ciclo de ida e volta EML → MSG → EML.
Próximas Etapas
- Guia de Instalação — Configuração do NuGet e do projeto
- Recursos — Referência completa de recursos com exemplos
- Guia do Desenvolvedor — Operações MSG, propriedades MAPI, contêineres CFB