参考网址:
http://www.cnblogs.com/jys509/p/4499978.html
这个问题被搞了好久,一直没找到解决方式,网上解决方案倒是很多,但是之前找到的,尝试过都不行,今天总算是给解决了
问题描述:
System.Security.Cryptography.CryptographicException: 出现了内部错误。
at System.Security.Cryptography.CryptographicException.ThrowCryptographicException(Int32 hr)
at System.Security.Cryptography.X509Certificates.X509Utils._LoadCertFromFile(String fileName, IntPtr password, UInt32 dwFlags, Boolean persistKeySet, SafeCertContextHandle& pCertCtx)
at System.Security.Cryptography.X509Certificates.X509Certificate.LoadCertificateFromFile(String fileName, Object password, X509KeyStorageFlags keyStorageFlags)
at System.Security.Cryptography.X509Certificates.X509Certificate..ctor(String fileName, String password)
at System.Security.Cryptography.X509Certificates.X509Certificate2..ctor(String fileName, String password)
at Qxun.Framework.Weixin.NativePay.HttpService.Post(String xml, String url, Boolean isUseCert, Int32 timeout) in 位置
拒绝访问,也不知道为啥会拒绝,发布出去的机制总归和本地不同。这个方法要再不行,就去尝试一下https。幸好成功了。
处理方法:
IIS 应用程序池--选中你网站的所配置的应用程序池--右键 选择 “高级配置” --将“加载用户配置文件” 设置为True 。问题解决