我正在尝试找到一种方法来通过 Exchange Web 服务在 Exchange 2010 的委派邮箱中获取项目的发件人姓名。这种情况是许多代表可以访问共享收件箱并以所有者身份从该收件箱发送电子邮件(即'messagingtest@onetwothree.com'),但我希望能够确定谁发送了特定电子邮件。
我可以很好地掌握已发送的文件夹项目,但找不到识别发件人的方法。
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP2);
service.Credentials = new System.Net.NetworkCredential("AdministratorUsername", "AdministratorPassword", "onetwothree");
service.Url = new Uri("https://excas.onetwothree.local/EWS/Exchange.asmx");
service.AutodiscoverUrl("exadmin@onetwothree.com", RedirectionUrlValidationCallback);
Mailbox principal = new Mailbox("messagingtest@onetwothree.com");
Folder Ftest = Folder.Bind(service, new FolderId(WellKnownFolderName.SentItems, principal));
FindItemsResults<Item> findAltResults = service.FindItems(new FolderId(WellKnownFolderName.SentItems, principle), new ItemView(10));
foreach (Item SentItem in findAltResults.Items)
{
EmailMessage mss = (EmailMessage)SentItem;
string Sender = mss.Sender.Name; // This just returns the mailbox principal, messagingtest@onewtothree.com, not j.johnson@onetwothree.com
}
有任何想法吗?