1
我正尝试使用ExchangeService访问Outlook中的第二个邮箱。但是当我运行该应用程序时,它抓住了我的主要电子邮件。值得注意的是,我在这里使用Windows身份验证,并且我需要这个工作。如何使用ExchangeService访问共享邮箱(Outlook 2013)
var useExchangeServer = new UseExchangeServer("[email protected]");
var messages = useExchangeServer.LoadMessages(1);
foreach (var message in messages){ //At this point message has the wrong email...
...
}
这里是我的“UseExchangeServer”类
public UseExchangeServer(string mailBox)
{
_service = new ExchangeService(ExchangeVersion.Exchange2010_SP2);
_service.UseDefaultCredentials = true;
_service.AutodiscoverUrl(mailBox);
}
public FindItemsResults<Item> GetLastItems(int numberOfItems)
{
return _service.FindItems(WellKnownFolderName.Inbox, new ItemView(numberOfItems));
}
public IEnumerable<EmailMessage> LoadMessages(int numberOfMessages)
{
var findResults = GetLastItems(numberOfMessages);
foreach (var item in findResults.Items)
{
var message = EmailMessage.Bind(_service, item.Id, new PropertySet(BasePropertySet.IdOnly, ItemSchema.Attachments));
message.Load();
yield return message;
}
}
它不会让我投票,因为我仍然是一个新手,但这是一个谢谢一堆答案! – MistaGoustan
@ glen-scales消息和约会都可以正常读取,但它不能使用'new FolderId(WellKnownFolderName.Contacts,mailBox);(在outlook联系人显示为\\ SECONDEMAIL'而不是'SECONDEMAIL @ mycompany .com“' – jpfreire
顺便说一下,它是一个共享邮箱我试图从 – jpfreire