在EWS中,EmailMessage
有发件人(emailMessage.getSender()
)并且可能有附件(emailMessage.getAttachments()
)。
这些附件可以是FileAttachment
(对于文件)或ItemAttachment
(对于附加的电子邮件)。
此项目附件有很多信息,例如:
但如何查找此附加电子邮件的发件人?
修改: 使用EWS Java API 1.1.5 http://archive.msdn.microsoft.com/ewsjavaapi/Release/ProjectReleases.aspx?ReleaseId=5754
答案 0 :(得分:1)
在c#中,您可以访问ItemAttachment.Message
,然后访问Message.Sender
。获得发件人后,您可以检索Sender.Mailbox
以访问Mailbox.EmailAddress
。也许你可以将它转换成类似于java的东西。
ItemAttachment itemAttachment = attachment as ItemAttachment;
itemAttachment.Load();
Sender sender = itemAttachment.Message.Sender;
Mailbox mailbox = sender.Mailbox;
string email = mailbox.EmailAddress;
答案 1 :(得分:1)
在SliverNinja回复后,我尝试将该项目检索为电子邮件。
将EWS与Java一起使用时,您必须将项ItemAttachment
强制转换为EmailMessage
,如下所示:
Item item = ((ItemAttachment) attachment).getItem();
if (item instanceof EmailMessage) {
String sender = ((EmailMessage)item).getSender().getAddress();
}
该项目也可以投射为约会或联系人或任务或联系人组。
修改: 获取发件人的另一种方法是
((EmailMessage) item).getFrom().getAddress();
这看起来像是做同样的