Aspose.Email FOSS for .NET הוא ספרייה C # ללא תלויות, בעלת רישיון MIT לעבודה עם קבצי Microsoft Outlook .msg , פחיות CFB (Compound File Binary) והודעות EML. הוסף חבילה אחת של NuGet ופתאום התחל לקרוא, ליצור ולעבד מסרים דוא"ל מבלי להתקין את Microsoft Outlook או כל זמן תפעול פרטי.
הספרייה מספקת שני רמות של גישה. ברמה הנמוכה, CfbReader ו- CfbWriter נותנים שליטה מלאה על כלי CFB בינאריים כניסי תיקונים מעוקבים, קוראים ומכות צמת אחסון ותעשי הנתונים הזורמים, ובוחן את תכנון המגזר הגולמי. MsgReader وMsgWriter מטפלים בפורמט MSG מעל CF B, חושפים זרמי נכסים MAPI, טבלאות מקבליים וסוב-חנויות התוספות. בשלב גבוה, MapiMessage מאפשר לך ליצור הודעות חדשות מהתחלה, לקרוא, גוף, שולח וקבלים, לנהל מתוספים, ולהמיר בין פורמט EMLIME לבין MS G באמצעות יישום מובנה במערכת .
הספרייה מיועדת ל- .NET 8.0 או מאוחר יותר ואין לה תלויות מקומיות, מה שהופך אותה מתאימה לחלונות, לינוקס, macOS, כלי דוקר ותפקודים ללא שרת. עבור תכונות נוספות ותמיכה מסחרית, ראה 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 קובצי גישה ישירה CF B מאפשר בדיקה משפטית ולתיקון.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() or MapiMessage.FromStream().message.Attachments , ולהציל כל attachment.Data לדיסק.message.Subject, message.Body , message.SenderEmailAddress ו- message.Recipients ללא אוטומציה COM..eml file (RFC 5322 / MIME) לתוך אובייקט מלא MapiMessage באמצעות MapiMessage.LoadFromEml(stream).MapiMessage בחזרה לפורמט MIME עם message.SaveToEml() או message.SaveToEml(stream)..eml ו- .msg קבצים לפורמט אחד..eml קישורים בבדיקת ולוודא שהם שורדים MSG מסע הלוך ושוב ללא אובדן נתונים.פתח קובץ MSG של Outlook מזרם ולדפיס את הנושא לא נדרש 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);