EWS:通过EntryID / ItemID在已发送的项目中查找邮件?

时间:2015-11-19 07:43:45

标签: email exchange-server exchangewebservices

我有邮件的EntryID和ItemID,我如何使用EWS获取邮件,不知道它是否在"收件箱中#34;或"已发送的项目"?

我试过这个..

Dim ewsID As String = "AAAAAMgC9AZo0nACt4jVCOhhCmcHAF35p973GUpBjIUVAx1CYigAAAAAABEAAF35p973GUpBjIUVAx1CYigAAiwdaBwAAA=="
Dim email As EmailMessage = EmailMessage.Bind(service, New Microsoft.Exchange.WebServices.Data.ItemId(ewsID))

但它找不到任何东西。

帮助:)

1 个答案:

答案 0 :(得分:0)

如果您有来自PR_EntryId或Outlook OOM应用程序的HexEntryId,您需要使用convertItem转换为EWSid以使用,例如根据您发布的内容应该可以使用

        String ItemId = "AAAAAMgC9AZo0nACt4jVCOhhCmcHAF35p973GUpBjIUVAx1CYigAAAAAABEAAF35p973GUpBjIUVAx1CYigAAiwdaBwAAA==";
        AlternateId HexId = new AlternateId(IdFormat.HexEntryId, BitConverter.ToString(Convert.FromBase64String(ItemId)).Replace("-", ""), "Mailbo@domain.com");
        AlternateIdBase Converted = service.ConvertId(HexId, IdFormat.EwsId);
        EmailMessage Message = EmailMessage.Bind(service, new ItemId(((AlternateId)Converted).UniqueId));

干杯 格伦