我正在尝试通过WebDav访问我的Exchange邮箱。 在本地我使用以下URL来执行此操作:
https://server/exchange/username/inbox/
由于我们将服务器移至bpos(在线交换),因此我不确定使用哪个URL来访问我的邮箱。 bpos服务器确实处理多个域,我不知道将域放在上面的url中的哪个位置。
有没有人有过以编程方式访问bpos交换服务器的经验?
由于 安德烈亚斯
答案 0 :(得分:0)
我们使用“WebDAV .NET for Exchange”商业库通过WebDAV协议访问Microsoft Exchange Online服务器。您必须使用基于表单的身份验证才能登录,而网址就像https://red003.mail.microsoftonline.com/exchange/xxxxxx@xxxxx.microsoftonline.com
答案 1 :(得分:0)
经过长时间的搜索和几十次测试后,我似乎找到了问题所在:
首先,WebDav不适用于Exchange Online。 有一个使用WebServices的解决方案,它非常好用。
我似乎必须将Exchange版本设置为2007_SP1。我没有找到任何选项将此项目留空或检测到它。
var service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
// Just to get the trace messages
service.TraceEnabled = true;
ServicePointManager.ServerCertificateValidationCallback = CertificateValidationCallBack;
service.UseDefaultCredentials = false;
service.Credentials = new WebCredentials("<Username>", "<Password>");
// Autodiscover does NOT work if Exchange is not in the local net
// This is the url you have to use for german account (red002)
service.Url = new Uri("https://red002.mail.emea.microsoftonline.com/ews/Exchange.asmx");
我仍然无法理解为什么你必须提前知道交换版本,并且没有选择通过电话协商。
类似的事实是我必须知道能够连接到Exchange服务器的URL。云的基本概念是不是必须知道您的数据托管在哪里?
我希望这段代码可以帮助别人。我肯定需要这个建议: - )