Як розпочати роботу з Aspose.Email FOSS для .NET

Як розпочати роботу з Aspose.Email FOSS для .NET

Цей посібник крок за кроком проведе вас через встановлення бібліотеки, читання вашого першого файлу MSG, створення повідомлення з нуля та конвертацію між форматами EML і MSG.

Крок 1 — Встановити пакет

dotnet add package Aspose.Email.Foss

Додаткова конфігурація не потрібна. Пакет не має нативних залежностей.


Крок 2 — Читання файлу MSG

Створіть консольний застосунок і додайте наступний код:

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.SenderEmailAddress}");
Console.WriteLine($"Body: {message.Body}");

foreach (var recipient in message.Recipients)
    Console.WriteLine($"To: {recipient.EmailAddress}");

foreach (var attachment in message.Attachments)
    Console.WriteLine($"Attachment: {attachment.Filename} ({attachment.MimeType})");

MapiMessage.FromStream() розбирає CFB‑контейнер файлу MSG і надає всі властивості MAPI через строго типізовані властивості C#. Microsoft Outlook не потрібен.


Крок 3 — Створити новий файл MSG

using System.IO;
using Aspose.Email.Foss.Msg;

var message = MapiMessage.Create("Meeting Notes", "Please find the notes attached.");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");

// Add a file attachment
message.AddAttachment("notes.txt", System.Text.Encoding.UTF8.GetBytes("Meeting notes here"), "text/plain");

// Save to file
message.Save("meeting_notes.msg");
Console.WriteLine("Created meeting_notes.msg");

MapiMessage.Create() створює повідомлення в пам’яті. Save() серіалізує його у формат MSG — ви можете передати шлях до файлу, Stream або викликати Save() без аргументів, щоб отримати byte[].


Крок 4 — Перетворити EML у MSG

using System.IO;
using Aspose.Email.Foss.Msg;

// Load from EML
using var input = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(input);

Console.WriteLine($"Subject: {message.Subject}");

// Save as MSG
message.Save("converted.msg");
Console.WriteLine("Saved converted.msg");

// Or save back to EML (round-trip)
message.SaveToEml("roundtrip.eml");

Вбудований MIME‑парсер зберігає тему, тіло, HTML‑тіло, відправника, одержувачів та всі вкладення під час повних циклів EML ↔ MSG.


Наступні кроки

 Українська