Aspose.Email FOSS עבור .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 ולפונקציות ללא שרת. לתכונות נוספות ולתמיכה מסחרית, ראה Aspose.Email for .NET.
CfbReader.FromFile(), CfbReader.FromStream(), או new CfbReader(data).IterStorages(), IterStreams(), IterChildren() ו-IterTree().ResolvePath(names) כדי לאתר זרם ספציפי לפי שרשרת שמות.CfbDocument וסריאליזציה לבייטים או לקובץ דרך 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() עם כתובת דוא"ל ושם תצוגה.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 ללא אובדן נתונים.פתח קובץ 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);
בנה דוא"ל שלם עם השולח, הנמען והקובץ המצורף, ואז כתוב אותו לקובץ 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 באמצעות מפענח 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);