在Exchange2007直接使用2003的WebDAV代码时,出现错误:
基础连接已关闭,未能为 SSL/TLS 安全通道建立信任关系。
其原因是:提供的证书不完全正确,在IE里要手动“确认”,如图:
如果在try...catch代码中输出InnerException.Message,可以看到内部错误信息是:根据验证过程,远程证书无效
猜测要解决此问题,配置上可能应该需要在服务器设置CA,对证书验证。
另一方面,可以用.net2.0的https请求的代码实现:
引用的命名空间:
using System.Net;
using System.Net.Security;
using System.Security.Authentication;
using System.Security.Cryptography.X509Certificates;
代码:
public bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{ // Always accept
return true;
}
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(CheckValidationResult);