![](/img/trans.png)
[英]Microsoft.Exchange.WebServices.Data.ServiceResponseException: Unable to access an account or mailbox thrown for user having fullright access
[英]Microsoft.Exchange.WebServices.Data.ServiceResponseException: Unable to access an account or mailbox
旁注1 :我之前看过几次这个话题,但是大多数>都还没有解决,其余的与我的问题没有真正的关系。
旁注2 :请不要对参数的使用感到困惑,我在代码中做了一些调整,以使其适合SO。 参数不是这里的问题。
我正在尝试开发一种从功能邮箱中读取电子邮件的方法。 在这一点上,我想通常可以访问邮箱,所以我在看是否可以读取自己邮箱中的邮件。 但是,似乎有些问题。 一旦尝试运行service.FindItems(inbox, fView)
方法,它就会给我以下错误消息:
Microsoft.Exchange.WebServices.Data.ServiceResponseException: Unable to access an account or mailbox.
在这一点上,我不确定它是否与凭证或访问权限有关。 下面是我正在使用的代码。
我正在触发创建的辅助方法:
FindItemsResults<Item> items = ExchangeWebServiceHelper.GetEmailsFromFolder(inboxName);
在ExchangeWebServiceHelper中,我有以下两种方法:
public static ExchangeService CreateConnection()
{
string url = WebConfigurationManager.AppSettings["EWSAsmxUrlNp"];
ServicePointManager.ServerCertificateValidationCallback = delegate(
Object obj,
X509Certificate certificate,
X509Chain chain,
SslPolicyErrors errors)
{
return true;
};
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP2);
service.Url = new Uri(url);
service.UseDefaultCredentials = true;
return service;
}
public static FindItemsResults<Item> GetEmailsFromFolder(Mailbox mailbox)
{
ExchangeService service = CreateConnection();
FolderView fView = new FolderView(100);
fView.PropertySet = new PropertySet(BasePropertySet.IdOnly, FolderSchema.DisplayName);
FolderId inbox = new FolderId(WellKnownFolderName.Inbox);
FindItemsResults<Item> results = service.FindItems(inbox, fView);
Logger.Log(mailbox.ToString());
Logger.Log(results.TotalCount.ToString());
return results;
}
根据Microsoft Dev Center ,您不能对Exchange OnLine使用.UseDefaultCredentials = true
。
备注
将UseDefaultCredentials属性设置为true会自动将Credentials属性设置为空引用(在Visual Basic中为Nothing)。
如果用户的邮箱作为Office 365的一部分托管在Exchange Online或Exchange Online中,则不能使用已登录用户的默认凭据 。 而是使用Credentials属性设置用户的凭据。 对于Exchange Online,用户的凭据必须采用用户主体名称(UPN)形式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.