Aspose.Email FOSS for .NET είναι μια βιβλιοθήκη C# αδειοδοτημένη με MIT, χωρίς εξαρτήσεις, για εργασία με αρχεία Microsoft Outlook .msg, δοχεία Compound File Binary (CFB) και μηνύματα EML. Προσθέστε ένα μόνο πακέτο NuGet και ξεκινήστε αμέσως την ανάγνωση, δημιουργία και επεξεργασία μηνυμάτων ηλεκτρονικού ταχυδρομείου χωρίς την εγκατάσταση του Microsoft Outlook ή οποιουδήποτε ιδιόκτητου χρόνου εκτέλεσης.
Η βιβλιοθήκη παρέχει δύο επίπεδα πρόσβασης. Σε χαμηλό επίπεδο, CfbReader και CfbWriter δίνουν πλήρη έλεγχο πάνω σε δυαδικά κοντέινερ CFB — περιήγηση στις καταχωρήσεις καταλόγου, ανάγνωση και εγγραφή κόμβων αποθήκευσης και δεδομένων ροής, και επιθεώρηση της ακατέργαστης διάταξης τομέων. MsgReader και MsgWriter διαχειρίζονται τη μορφή MSG πάνω από CFB, εκθέτοντας ροές ιδιοτήτων MAPI, πίνακες παραληπτών και υπο‑αποθηκεύσεις συνημμένων. Σε υψηλό επίπεδο, MapiMessage σας επιτρέπει να δημιουργήσετε νέα μηνύματα από το μηδέν, να διαβάσετε το θέμα, το σώμα, τον αποστολέα και τους παραλήπτες, να διαχειριστείτε συνημμένα, και να μετατρέψετε μεταξύ μορφής MSG και EML μέσω ενσωματωμένης υλοποίησης MIME.
Η βιβλιοθήκη στοχεύει στο .NET 8.0 ή νεότερο και δεν έχει εγγενείς εξαρτήσεις, καθιστώντας την κατάλληλη για Windows, Linux, macOS, Docker containers και serverless functions. Για πρόσθετα χαρακτηριστικά και εμπορική υποστήριξη, δείτε Aspose.Email for .NET.
CfbReader.FromFile(), CfbReader.FromStream() ή new CfbReader(data).IterStorages(), IterStreams(), IterChildren() και IterTree().ResolvePath(names) για να εντοπίσετε ένα συγκεκριμένο stream με αλυσίδα ονομάτων.CfbDocument και σειριοποιήστε σε bytes ή αρχείο μέσω CfbWriter.ToBytes() ή CfbWriter.WriteFile().CfbStorage και CfbStream σε οποιονδήποτε κόμβο αποθήκευσης πριν από τη σειριοποίηση..msg — η άμεση πρόσβαση σε CFB επιτρέπει τη δικανική επιθεώρηση και επισκευή.MsgReader.FromFile() ή MsgReader.FromStream() και αποκτήστε πρόσβαση στις υποκείμενες ροές ιδιοτήτων MAPI, στα αρχεία παραληπτών και στις υπο‑αποθηκεύσεις συνημμένων.MsgDocument με MsgWriter.ToBytes() ή MsgWriter.WriteFile().MsgStorage, MsgStream και MsgStorage.FindStream().MsgStorage.FindStream() και MsgStorage.FindStorage() για να εντοπίσετε ονομαστικές υποκαταχωρήσεις..msg από καταλόγους αρχείου και εξαγωγή μεταδεδομένων ή συνημμένων..msg προγραμματιστικά και παραδώστε τα σε συστήματα αλληλογραφίας βασισμένα στο Outlook.MapiMessage.Create(subject, body), ορίστε SenderName, SenderEmailAddress και HtmlBody.To, Cc και Bcc μέσω AddRecipient() με διεύθυνση email και όνομα εμφάνισης.AddAttachment() ή δημιουργήστε αντικείμενα MapiAttachment απευθείας με Filename, MimeType, ContentId και Data.message.Save() ή message.Save(stream) και επαναφορτώστε με MapiMessage.FromFile() ή MapiMessage.FromStream().message.Attachments, και αποθηκεύστε κάθε attachment.Data στο δίσκο.message.Subject, message.Body, message.SenderEmailAddress και message.Recipients χωρίς αυτοματοποίηση COM..eml αρχείου (RFC 5322 / MIME) σε ένα πλήρες MapiMessage αντικείμενο μέσω MapiMessage.LoadFromEml(stream).MapiMessage σε μορφή MIME με message.SaveToEml() ή message.SaveToEml(stream)..eml και .msg σε μια ενιαία μορφή..eml fixtures στα τεστ και επαληθεύστε ότι επιβιώνουν το MSG round‑trip χωρίς απώλεια δεδομένων.Ανοίξτε ένα αρχείο Outlook MSG από ροή και εκτυπώστε το θέμα — δεν απαιτείται το Microsoft Outlook.
using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);
Δημιουργήστε ένα πλήρες email με αποστολέα, παραλήπτη και συνημμένο, στη συνέχεια γράψτε το σε αρχείο MSG.
using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.Create("Hello", "Body");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
using var attachmentStream = new MemoryStream("abc"u8.ToArray());
message.AddAttachment("note.txt", attachmentStream, "text/plain");
using var output = File.Create("hello.msg");
message.Save(output);
Φορτώστε ένα τυπικό αρχείο .eml και αποθηκεύστε το ως αρχείο Outlook .msg χρησιμοποιώντας τον ενσωματωμένο parser MIME.
using System.IO;
using Aspose.Email.Foss.Msg;
using var input = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(input);
using var msgOutput = File.Create("message.msg");
message.Save(msgOutput);
using var emlOutput = File.Create("roundtrip.eml");
message.SaveToEml(emlOutput);