2011-10-12 63 views
2

我使用Exchange Web服务托管API 1.1版本进行一些开发任务,我希望对传入的电子邮件执行一些操作。Exchange Web服务托管API:如何阅读电子邮件地址?

  1. 确认发件人
  2. 在磁盘上保存为HTML文件的电子邮件消息(作为SaveAs选项同样的方法),以发送电子邮件到

对于第一个问题发件人,我需要获取发件人的电子邮件地址。所以,我尝试以下,但没有运气:(做给下面我可以得到电子邮件消息中,从仅包含名称而不是电子邮件地址。

EmailMessage email = EmailMessage.Bind(exchangeService, item.Id); 
    Console.WriteLine(email.From.Address); 

谁能帮助我在这里。

谢谢,

Ankush古普塔

+0

那么你遇到什么错误/问题? –

+0

我无法获取发件人的电子邮件地址。我再次提炼了我的问题。 –

+0

我能够使用EWS获取发件人电子邮件地址。我错过了添加email.Load()调用,这样做所有的第一类属性都会被加载,并且我可以获取发件人地址。 –

回答

2

要回答在评论的问题:

EWS不提供了一种方式,直接节省了MES圣人为HTML。你可以,但是,由于使用HTML该属性集获得邮件正文:

mail.Load(new PropertySet(ItemSchema.Body) {RequestedBodyType = BodyType.HTML}); 

如果你想要的东西更花哨(如Outlook中保存为HTML功能),你必须在车身上结合From,ToRecipients,CCRecipients,Subject和Received属性。

+0

如果我的电子邮件包含嵌入图像,那么保存的HTML文件将无法呈现图像,因为图像不存在(因为消息正文中的名称和保存的HTML是不同的),即使我试图获取附件,但是html中的名称(我使用文件流保存)与附件集合中的名称不同。 我是否需要解析HTML并将图像名称替换为我从集合中获取的图像名称? –

相关问题