Ievads

Aspose.Email FOSS for .NET ir bezmaksas, atvērtā koda C# bibliotēka, kas ļauj strādāt ar Outlook MSG failiem, Compound File Binary (CFB) konteineriem un EML ziņām tieši jūsu .NET lietojumprogrammā — ne Microsoft Outlook, ne COM interop, un nav vajadzīgas vietējās bibliotēkas. Izplatiet to kā vienu NuGet pakotni, un tas darbojas identiski Windows, Linux, macOS, Docker konteineros un serverless functions.

Bibliotēka risina atkārtotu problēmu uzņēmējdarbības un integrācijas darbā: Outlook .msg faili tiek radīti miljoniem biznesa lietotāju, taču to parsēšana bez Outlook ir vēsturiski prasījusi COM automatizāciju vai dārgas komerciālas bibliotēkas. Aspose.Email FOSS for .NET nodrošina pilnīgu lasīšanas/rakstīšanas atbalstu MSG, pamatā esošajam CFB binārajam konteineram un EML/MIME formātam — viss zem MIT licences bez lietošanas ierobežojumiem.

Neatkarīgi no tā, vai veidojat e‑pasta arhivēšanas cauruļvadu, migrācijas rīku, pielikumu izguvēju
vai automatizētu MSG ģeneratoru, šī bibliotēka nodrošina tiešu, zemā līmeņa piekļuvi katram e‑pasta formāta baitam, kā arī augsta līmeņa MapiMessage API, kas ļauj sākt darbu dažu minūšu laikā.


Galvenās funkcijas

Lasīt Outlook MSG failus

Atveriet jebkuru .msg failu no ceļa vai plūsmas, izmantojot MsgReader.FromFile() vai MsgReader.FromStream().
Piekļūstiet pilnam MAPI īpašību plūsmai, saņēmēju ierakstiem un pievienojumu apakšglabām
neapstrādātā baitu līmenī, izmantojot MsgStorage un MsgStream.

using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");

var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);

Izveidot MSG failus no nulles

Izveidojiet pilnīgu e-pastu programmatiski, izmantojot MapiMessage.Create(). Iestatiet tematu, vienkāršā teksta ķermeni, HTML ķermeni, sūtītāja vārdu, sūtītāja e-pasta adresi, piegādes laiku un interneta ziņojuma ID, pēc tam pievienojiet saņēmējus ar AddRecipient() un pielikumus ar AddAttachment(). Serializējiet ar message.Save().

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);

Konvertēt EML uz MSG (un atpakaļ)

Ļaujiet ielādēt standarta RFC 5322 .eml failu uz MapiMessage ar MapiMessage.LoadFromEml(), pēc tam saglabājiet to kā Outlook .msg failu — vai apgrieziet procesu ar MapiMessage.SaveToEml(). Iebūvētais MIME parsētājs saglabā tematu, ķermeni, HTML ķermeni, sūtītāju, saņēmējus un pievienojumus pilnīgu EML ↔ MSG pāreju laikā.

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);

Zema līmeņa CFB konteineru piekļuve

Outlook MSG faili ir izveidoti uz Compound File Binary (CFB) formāta — hierarhiska binārā konteineris, kas līdzīgs failu sistēmai. CfbReader atklāj pilnu direktoriju koku: iterējiet glabāšanas vietas un plūsmas ar IterStorages(), IterStreams() un IterChildren(), pārvietojieties uz konkrētām ierakstiem pēc ceļa ar ResolvePath(), un nolasiet neapstrādātas plūsmas baitus ar GetStreamData().

CfbWriter ļauj jums izveidot un serializēt CFB dokumentu no nulles. Izveidojiet CfbDocument, pievienojiet CfbStorage un CfbStream mezglus, un izsauciet CfbWriter.ToBytes() vai CfbWriter.WriteFile(), lai serializētu.

MAPI īpašību un pielikumu piekļuve

Klase MapiPropertyCollection nodrošina tipizētu MAPI īpašību piekļuvi jebkuram MSG vai glabāšanas objektam: izmantojiet Get(), Set(), Add() un Remove() ar standarta CommonMessagePropertyId vai PropertyTypeCode enum vērtībām. Piekļūstiet pievienojuma metadatiem un bināriem datiem, izmantojot MapiAttachment īpašības: Filename, MimeType, ContentId un Data.


Ātrais sākums

Instalējiet pakotni:

dotnet add package Aspose.Email.Foss

Nolasīt tematu no MSG faila:

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

using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);
Console.WriteLine(message.SenderEmailAddress);
foreach (var recipient in message.Recipients)
    Console.WriteLine($"To: {recipient.EmailAddress}");
foreach (var attachment in message.Attachments)
    Console.WriteLine($"Attachment: {attachment.Filename} ({attachment.MimeType})");

Atbalstītie formāti

FormātsPaplašinājumsLasītRakstīt
Compound File Binary.cfb
Outlook Message.msg
MIME / EML.eml

Atvērtā pirmkods un licencēšana

Aspose.Email FOSS for .NET ir izlaists zem MIT licences. Jūs varat to brīvi izmantot iekš personīgajos, komerciālajos un atvērtā koda projektos bez lietošanas ierobežojumiem. Avota kods ir pieejams github.com/aspose-email-foss/Aspose.Email-FOSS-for-.Net.


Sākšana