EWS 托管 API:搜索与 Windows 登录关联的主邮箱以外的收件箱



我有一个应用程序从"用户A"中提取电子邮件,电子邮件地址 UserA@email.com。我使用以下代码来执行此操作:

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010);
service.UseDefaultCredentials = true;
service.Url = new Uri(ServerName);
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, new  ItemView(500));

如果用户 A 已登录并运行应用程序,则此方法工作正常。

但是,假设"用户 B"已被授予对用户 A 收件箱的访问权限,并希望运行相同的应用程序以从用户 A 的收件箱中提取文件。如何更改上面的代码以指定电子邮件帐户收件箱?

我知道我可以在获取凭据时对用户 A 的登录详细信息进行硬编码,但理想情况下,我会避免使用硬编码用户名,而是使用运行应用程序的用户的凭据。

这可能只是我缺乏理解,但我对 .net 相对较新,对 EWS 也很陌生。任何指示将不胜感激!

谢谢

委派是我需要的:

FolderId InboxId = new FolderId(WellKnownFolderName.Inbox, "UserA@email.com");
FindItemsResults<Item> findResults = service.FindItems(InboxId, new ItemView(500));

相关内容

最新更新