我正在尝试通过WebDav访问我的exchange邮箱。我在本地使用了以下URL来完成此操作:
https://server/exchange/username/inbox/
由于我们将服务器移至bpos (exchange online),因此我不确定使用哪个URL来访问我的邮箱。bpos服务器确实处理多个域,我不确定将域放在上面的url中的什么位置。
有没有人有过以编程方式访问bpos交换服务器的经验?
谢谢安德烈亚斯
发布于 2011-03-14 01:04:34
经过长时间的搜索和几十次测试,我似乎找到了我的问题:
首先,WebDav不能与Exchange Online一起使用。有一个使用WebServices的解决方案,它工作得很好。
我似乎必须将交换版本设置为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");我仍然不能理解的是,为什么你必须提前知道交换版本,而没有选择通过调用来协商。
类似的事实是,我必须知道URL才能连接到exchange服务器。云的基本思想不是不必知道数据托管在哪里吗?
我希望这段代码能帮助到一些人。我肯定会需要这个建议:-)
发布于 2011-02-24 23:02:44
我们使用"WebDAV .NET for Exchange“这一商业库通过WebDAV协议访问Microsoft Exchange Online服务器。您必须使用基于表单的身份验证才能登录,url类似于https://red003.mail.microsoftonline.com/exchange/xxxxxx@xxxxx.microsoftonline.com
https://stackoverflow.com/questions/5096081
复制相似问题