Câu hỏi thường gặp — Aspose.Email FOSS cho .NET

Câu hỏi thường gặp — Aspose.Email FOSS cho .NET

Cấp phép

Aspose.Email.Foss sử dụng giấy phép nào?

Giấy phép MIT. Không cần khóa giấy phép. Sử dụng tự do trong các dự án cá nhân, thương mại và mã nguồn mở.


Cài đặt

Làm thế nào để cài đặt Aspose.Email.Foss?

dotnet add package Aspose.Email.Foss

Phiên bản .NET nào được yêu cầu?

.NET 8.0 trở lên. Thư viện không hỗ trợ .NET Framework hoặc .NET Standard.

Có phụ thuộc gốc không?

No. Thư viện này là C# quản lý thuần túy không có phụ thuộc gốc. Nó chạy giống hệt trên Windows, Linux, macOS, Docker và môi trường không máy chủ.


Hỗ trợ định dạng

Các định dạng email nào được hỗ trợ?

Định dạngĐọcGhi
MSG (Outlook)
CFB (Compound File Binary)
EML (MIME / RFC 5322)

Tôi có thể đọc các tệp EML không?

Vâng. Sử dụng MapiMessage.LoadFromEml(stream) để tải một tệp .eml tiêu chuẩn vào một
MapiMessage. Trình phân tích MIME tích hợp xử lý các tiêu đề gập, nội dung base64, và
tin nhắn đa phần.

Tôi có thể chuyển đổi MSG sang EML không?

Vâng. Gọi message.SaveToEml() để xuất đầu ra byte[] trong bộ nhớ, hoặc
message.SaveToEml(stream) để ghi vào tệp. Chủ đề, nội dung, nội dung HTML, người gửi,
người nhận và tất cả các tệp đính kèm được giữ nguyên.

TNEF (winmail.dat) có được hỗ trợ không?

Không. Chỉ hỗ trợ các định dạng MSG (CFB) và EML (MIME) tiêu chuẩn.

IMAP/SMTP/POP3 có được hỗ trợ không?

Không. Thư viện xử lý các tệp MSG trực tiếp và không bao gồm bất kỳ lớp mạng/giao thức nào.


Sử dụng API

Làm thế nào để tải tệp MSG?

using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("message.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);

Làm thế nào để tôi tạo một tin nhắn mới?

var message = MapiMessage.Create("Subject", "Body");
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
message.Save("output.msg");

Làm thế nào để tôi thêm tệp đính kèm?

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

Làm thế nào để chuyển đổi EML sang MSG?

using var eml = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(eml);
message.Save("message.msg");

Làm thế nào để tôi truy cập cấu trúc CFB thô?

using Aspose.Email.Foss.Cfb;
using var reader = CfbReader.FromFile("message.msg");
foreach (var entry in reader.IterChildren(CfbConstants.RootStreamId))
    Console.WriteLine(entry.Name);

Các hạn chế đã biết

Có phương thức nào chưa được triển khai không?

Không có stub chưa được triển khai cố ý trong phiên bản hiện tại.

Có hỗ trợ lịch/đặt hẹn không?

Thư viện xử lý các tệp MSG một cách chung. Các thuộc tính đặc thù của lịch có thể được truy cập qua SetProperty() / GetPropertyValue() với các ID thuộc tính MAPI từ CommonMessagePropertyId, nhưng không có API lịch hoặc cuộc hẹn riêng biệt.

Có đảm bảo an toàn luồng không?

Mỗi thể hiện MapiMessageCfbReader là độc lập. Truy cập đồng thời vào các thể hiện riêng biệt từ các luồng khác nhau là an toàn. Không chia sẻ một thể hiện duy nhất giữa các luồng mà không có đồng bộ bên ngoài.

 Tiếng Việt