Συχνές Ερωτήσεις — Aspose.Email FOSS για .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 και περιβάλλοντα χωρίς διακομιστή.
Υποστήριξη μορφής
Ποιες μορφές email υποστηρίζονται;
| Μορφή | Ανάγνωση | Εγγραφή |
|---|---|---|
| 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);Γνωστοί περιορισμοί
Υπάρχουν μη υλοποιημένες μέθοδοι;
Δεν υπάρχουν σκόπιμα μη υλοποιημένα stubs στην τρέχουσα έκδοση.
Υπάρχει υποστήριξη ημερολογίου/ραντεβού;
Η βιβλιοθήκη διαχειρίζεται τα αρχεία MSG γενικά. Οι ιδιότητες που αφορούν το ημερολόγιο μπορούν να προσπελαστούν μέσω
SetProperty() / GetPropertyValue() με MAPI property IDs από CommonMessagePropertyId,
αλλά δεν υπάρχει αφιερωμένο API ημερολογίου ή ραντεβού.
Εγγυάται η ασφάλεια των νημάτων;
Κάθε MapiMessage και CfbReader παρουσία είναι ανεξάρτητη. Η ταυτόχρονη πρόσβαση σε ξεχωριστές παρουσίες από διαφορετικά νήματα είναι ασφαλής. Μην μοιράζεστε μία μόνο παρουσία μεταξύ νημάτων χωρίς εξωτερικό συγχρονισμό.