คำถามที่พบบ่อย — Aspose.Email FOSS for .NET
การให้สิทธิ์
Aspose.Email.Foss ใช้ใบอนุญาตอะไร?
ใบอนุญาต MIT. ไม่ต้องใช้คีย์ใบอนุญาต. ใช้ได้อย่างอิสระในโครงการส่วนบุคคล, เชิงพาณิชย์, และโอเพนซอร์ส
การติดตั้ง
ฉันจะติดตั้ง Aspose.Email.Foss อย่างไร?
dotnet add package Aspose.Email.Fossเวอร์ชัน .NET ที่ต้องการคืออะไร?
.NET 8.0 หรือใหม่กว่า. ไลบรารีไม่รองรับ .NET Framework หรือ .NET Standard.
มีการพึ่งพาเนทีฟหรือไม่?
ไม่. ไลบรารีเป็น C# ที่จัดการแบบบริสุทธิ์โดยไม่มีการพึ่งพาเนทีฟ มันทำงานเหมือนกันบน
Windows, Linux, macOS, Docker, และสภาพแวดล้อมแบบ serverless.
การสนับสนุนรูปแบบ
รูปแบบอีเมลที่รองรับคืออะไร?
| รูปแบบ | อ่าน | เขียน |
|---|---|---|
| MSG (Outlook) | ✓ | ✓ |
| CFB (Compound File Binary) | ✓ | ✓ |
| EML (MIME / RFC 5322) | ✓ | ✓ |
ฉันสามารถอ่านไฟล์ EML ได้หรือไม่?
ใช่. ใช้ MapiMessage.LoadFromEml(stream) เพื่อโหลดไฟล์ .eml มาตรฐานเข้าสู่MapiMessage. ตัวแยกวิเคราะห์ MIME ในตัวจัดการส่วนหัวที่พับ, เนื้อหา base64, และ
ข้อความหลายส่วน.
ฉันสามารถแปลง MSG เป็น EML ได้ไหม?
ใช่. เรียก message.SaveToEml() เพื่อรับผลลัพธ์ byte[] ในหน่วยความจำ, หรือmessage.SaveToEml(stream) เพื่อเขียนลงไฟล์. หัวเรื่อง, เนื้อหา, เนื้อหา HTML, ผู้ส่ง,
ผู้รับ, และไฟล์แนบทั้งหมดจะถูกเก็บไว้.
รองรับ TNEF (winmail.dat) หรือไม่?
ไม่. รองรับเฉพาะรูปแบบ MSG (CFB) และ EML (MIME) มาตรฐานเท่านั้น.
รองรับ IMAP/SMTP/POP3 หรือไม่?
ไม่. ไลบรารีจัดการไฟล์ MSG โดยตรงและไม่ได้รวมชั้นเครือข่าย/โพรโทคอลใดๆ
การใช้ API
ฉันจะโหลดไฟล์ MSG อย่างไร?
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("message.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);ฉันจะสร้างข้อความใหม่อย่างไร?
var message = MapiMessage.Create("Subject", "Body");
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
message.Save("output.msg");ฉันจะเพิ่มไฟล์แนบอย่างไร?
// From byte array
message.AddAttachment("file.pdf", pdfBytes, "application/pdf");
// From stream
using var stream = File.OpenRead("photo.png");
message.AddAttachment("photo.png", stream, "image/png");ฉันจะแปลง EML เป็น MSG อย่างไร?
using var eml = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(eml);
message.Save("message.msg");ฉันจะเข้าถึงโครงสร้าง CFB ดิบได้อย่างไร?
using Aspose.Email.Foss.Cfb;
using var reader = CfbReader.FromFile("message.msg");
foreach (var entry in reader.IterChildren(CfbConstants.RootStreamId))
Console.WriteLine(entry.Name);ข้อจำกัดที่ทราบ
มีเมธอดที่ยังไม่ได้ทำหรือไม่?
ไม่มีสตับที่ไม่ได้ทำงานโดยเจตนาในเวอร์ชันปัจจุบัน.
มีการสนับสนุนปฏิทิน/การนัดหมายหรือไม่?
ไลบรารีจัดการไฟล์ MSG อย่างทั่วไป คุณสมบัติเฉพาะปฏิทินสามารถเข้าถึงได้ผ่าน
SetProperty() / GetPropertyValue() ด้วยรหัสคุณสมบัติ MAPI จาก CommonMessagePropertyId,
แต่ไม่มี API เฉพาะสำหรับปฏิทินหรือการนัดหมาย
การรับประกันความปลอดภัยของเธรดหรือไม่?
แต่ละอินสแตนซ์ MapiMessage และ CfbReader เป็นอิสระต่อกัน. การเข้าถึงพร้อมกันของ
อินสแตนซ์จากเธรดแยกเป็นเรื่องปลอดภัย. อย่าแชร์อินสแตนซ์เดียวกันข้ามเธรด
โดยไม่มีการซิงโครไนซ์ภายนอก.