2011-01-31 63 views
2

我必須檢索發送的郵件正文並將其存儲在共享文件夾中。 我有以下代碼示例從電子郵件中檢索附件並將其存儲。使用Emailmessage類檢索郵件正文

EmailMessage message = EmailMessage.Bind(service, new ItemId(item.Id.ToString()), 
new PropertySet(BasePropertySet.IdOnly, ItemSchema.Attachments)); 

foreach (Attachment attachment in message.Attachments) 
{ 

    if (attachment is FileAttachment) 
    { 
     FileAttachment fileAttachment = attachment as FileAttachment; 

     // Load attachment contents into a file. 
     fileAttachment.Load("C:\\CodeCopy\\Email\\temp\\" + fileAttachment.Name); 

同樣,如果我想使用EmailMessage.body屬性,我該如何使用它。 我是初學者,所以請給出詳細的答案。

回答

1

可以使用EmailMessage.Body屬性來獲取代表您的郵件正文中的對象,然後調用其ToString()方法來獲取身體的內容作爲一個字符串,並寫入該字符串的文件:

using System.IO; 
using System.Text; 
using Microsoft.Exchange.WebServices.Data; 

EmailMessage message = EmailMessage.Bind(service, new ItemId(item.Id.ToString()), 
    new PropertySet(BasePropertySet.IdOnly, ItemSchema.Attachments)); 
using (StreamWriter writer = new StreamWriter(String.Format(
     CultureInfo.InvariantCulture, @"C:\CodeCopy\Email\temp\{0}.body.txt", 
     item.Id.ToString().Replace('\\', '_')))) { 
    writer.Write(message.Body.ToString()); 
} 
+0

謝謝你的回覆。我還觀察到有一個名爲EmailMessage.save()的屬性。我意識到根據我的要求,我必須將消息另存爲.msg文件。我可以使用此屬性(保存)將消息另存爲.msg文件嗎?如果是這樣,我該如何使用它? – Kruthika 2011-01-31 18:41:01

相關問題