Outlook Dosyaları Oluşturma ve Kaydetme
Aspose.Email, Outlook mesaj (MSG) dosyaları oluşturmayı destekler. Bu makale şunların nasıl yapılacağını açıklar:
- Outlook Mesajları Oluştur ve Kaydet
- Eklentili MSG Dosyaları Oluştur
- RTF Gövdesi ile MSG Dosyaları Oluştur
- Mesajı Taslak Durumunda Kaydet
Outlook Mesajları Oluştur ve Kaydet
Bu MailMessage sınıf, … içerir Save() Outlook MSG dosyalarını diske veya akışa kaydedebilen yöntem. Aşağıdaki kod parçacıkları … örneği oluşturur. MailMessage sınıf, from, to, subject ve body gibi özellikleri ayarlar. Save() yöntem dosya adını argüman olarak alır. Ayrıca, Outlook Mesajları bir … ile oluşturulabilir. sıkıştırılmış RTF gövdesi kullanarak MapiConversionOptions.
- Yeni bir … örneği oluşturun MailMessage sınıfını ve From, To, Subject ve Body özelliklerini ayarlar.
- Şuğu çağırın MapiMessage sınıf FromMailMessage yöntem, … nesnesini kabul eder MailMessage tür. FromMailMessage yöntem … dönüştürür MailMessage bir MapiMessage (MSG).
- Şuğu çağırın MapiMessage.Save() MSG dosyasını kaydetmek için yöntem.
Aşağıdaki kodu, Windows uygulamasındaki düğme kontrolünün tıklama olayına yazın.
Eklentili MSG Dosyaları Oluştur
Yukarıdaki örnekte, basit bir MSG dosyası oluşturduk. Aspose.Email ayrıca ekli mesaj dosyalarını kaydetmeyi destekler. Tek yapmanız gereken ekleri … eklemektir. MailMessage örnek. Add() metodunu çağırarak ek ekleyin MailMessage.Attachments koleksiyonuna. Yukarıda oluşturulan forma bir listbox ekleyin ve iki buton ekleyin; biri ek eklemek, diğeri kaldırmak için. Ek ekleyen uygulama şu şekilde çalışır:
- Add Attachment düğmesi tıklandığında, kullanıcıların ekleri göz atıp seçmelerine yardımcı olmak için bir Open File Dialog gösterilir.
- Bir dosya seçildiğinde, tam yolu bir listeye eklenir.
- MSG dosyası oluşturulduğunda, ek yolları listeden alınır ve şuna eklenir: MailMessage.Attachments koleksiyon.
Aşağıdaki kodu Ekleme butonunun tıklama olayına yazın.
Remove Attachment butonu tıklandığında, listbox’tan seçili öğeleri kaldırın. Remove Attachment butonunun tıklama olayına aşağıdaki kodu yazın.
Ekleri eklemek için kodu şuraya ekleyin: MailMessage örnek. Write Msg fonksiyonu için son kod aşağıdaki gibi yazılmıştır.
RTF Gövdesiyle MSG Dosyaları Oluştur
Aspose.Email ile zengin metin (RTF) gövdeli Outlook Mesajı (MSG) dosyaları da oluşturabilirsiniz. RTF gövdesi metin biçimlendirmesini destekler. Bunu, … ayarlayarak oluşturun. MailMessage.HtmlBody özellik. Bir … dönüştürdüğünüzde MailMessage örnek bir MapiMessage örneğinde, HTML gövdesi RTF’ye dönüştürülür. Bu şekilde, e-posta gövdesinin biçimlendirmesi korunur.
Aşağıdaki örnek, RTF gövdesine sahip bir MSG dosyası oluşturur. HTML gövdesinde bir başlık, kalın ve altı çizili biçimlendirme uygulanmıştır. Bu biçimlendirme, HTML RTF’ye dönüştürüldüğünde korunur.
MAPI Mesaj Gövdesi için RTF Sıkıştırması
NOT: Sıkıştırma işlemi, mesaj oluştururken performansı yavaşlatabilir. Bu gerçeği anlayarak ve sıkıştırma bayrağını dosya boyutu ile performans arasındaki belirli gereksinimler ve uzlaşma doğrultusunda yapılandırarak, geliştiriciler e-posta mesajlarıyla çalışırken MSG ve PST dosyalarının oluşturulmasını etkili bir şekilde yönetebilir.
RTF sıkıştırması, bir mesajın boyutunu ve Microsoft Outlook’un e-posta mesajları ve diğer verileri depolamak için kullandığı PST (Personal Storage Table) dosyalarının boyutunu azaltmayı amaçlar. Mesaj gövdesini yapılandırırken RTF sıkıştırması kullanarak, geliştiriciler e-posta mesajlarını depolamak için gereken bellek miktarını azaltabilir veya mesajları iletirken ağ bant genişliğini optimize edebilir.
Bu amaçla iki aşırı yüklü yöntem tasarlandı:
-
MapiMessageItemBase.SetBodyContent(string content, BodyContentType contentType, bool compression): Bu yöntem, belirtilen string içeriği ve gövde içerik türünü (örneğin düz metin, HTML vb.) kullanarak mesaj gövdesi içeriğini ayarlamanıza olanak tanır. İsteğe bağlı compression parametresi, içeriğin RTF sıkıştırmasıyla sıkıştırılıp sıkıştırılmayacağını belirten bir değerdir. compression true ise, içerik sıkıştırılır ve daha küçük bir mesaj boyutu elde edilir.
-
MapiMessageItemBase.SetBodyRtf(string content, bool compression): Bu yöntem, mesaj gövdesinin içeriğini RTF formatında ayarlar. content parametresi, mesaj gövdesi olarak ayarlanacak RTF içeriğini temsil eden bir dizedir. Önceki yöntem gibi, compression parametresi içeriğin RTF sıkıştırması uygulanıp uygulanmayacağını belirler. compression true ise, RTF içeriği sıkıştırılarak boyutu azaltılır.
Aşağıdaki kod örneği, html gövdesini nasıl ayarlayıp sıkıştırılmış tutacağınızı gösterir:
var msg = new MapiMessage("from@doamin.com", "to@domain.com", "subject", "body");
// set the html body and keep it compressed
// this will reduce the message size
msg.SetBodyContent(htmlBody, BodyContentType.Html, true);
Ayrıca bir MapiConversionOptions.UseBodyCompression özellik. Bu özellik etkinleştirildiğinde, MailMessage’tan MapiMessage’e dönüşüm sırasında RTF gövde sıkıştırması uygulanır ve daha küçük bir MSG dosyası boyutu elde edilir. Aşağıdaki kod örneğinde gösterilmiştir:
var message = MailMessage.Load(fileName);
var options = new MapiConversionOptions();
options.UseBodyCompression = true;
var msg = MapiMessage.FromMailMessage(message, options);
Mesajı Taslak Durumunda Kaydet
E-postalar, birisi düzenlemeye başladıktan sonra daha sonra tamamlamak üzere geri dönmek istediğinde taslak olarak kaydedilir. Aspose.Email, bir mesaj bayrağı ayarlanarak e-posta mesajlarını taslak durumunda kaydetmeyi destekler. Aşağıda bir Outlook e-posta mesajını (MSG) taslak olarak kaydetmek için örnek kod yer almaktadır.