开发者

Retrieving message body using Emailmessage class

I have to retrieve the body of an email sent and store it in a shared folder. I have the following code sample to retrieve attachments from the email and store it.

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)
    {
        开发者_如何学JAVAFileAttachment fileAttachment = attachment as FileAttachment;

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

Similarly if I want to use EmailMessage.body property how do I use it. I am a beginner, so please give a detailed answer.


You can use the EmailMessage.Body property to get an object representing the body of your message, then call its ToString() method to get the body contents as a string, and write that string to a file:

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

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜