Comment démarrer avec Aspose.Email FOSS pour .NET
Ce guide vous accompagne dans l’installation de la bibliothèque, la lecture de votre premier fichier MSG, la création d’un message à partir de zéro et la conversion entre les formats EML et MSG.
Étape 1 — Installer le package
dotnet add package Aspose.Email.FossAucune configuration supplémentaire n’est requise. Le package n’a aucune dépendance native.
Étape 2 — Lire un fichier MSG
Créez une application console et ajoutez le code suivant :
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() analyse le conteneur CFB du fichier MSG et expose toutes les propriétés MAPI via des propriétés C# fortement typées. Aucun Microsoft Outlook n’est requis.
Étape 3 — Créer un nouveau fichier 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() produit un message en mémoire. Save() le sérialise au format MSG — vous pouvez fournir un chemin de fichier, un Stream, ou appeler Save() sans arguments pour obtenir un byte[].
Étape 4 — Convertir EML en 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");L’analyseur MIME intégré préserve l’objet, le corps, le corps HTML, l’expéditeur, les destinataires et toutes les pièces jointes lors de conversions complètes EML ↔ MSG.
Étapes suivantes
- Fonctionnalités et capacités — référence complète des fonctionnalités avec exemples C#
- FAQ — réponses aux questions courantes
- Guide d’installation — configuration NuGet et exigences de version .NET