我總結了一下出現證書無法加載的原因有以下三個
1.證書密碼不正確,微信證書密碼就是商戶號
解決辦法:請檢查證書密碼是不是和商戶號一致
2.IIS設置錯誤,未加載用戶配置文件
解決辦法:找到網站使用的應用程序池-->右擊-->高級設置-->打開如下圖-->在加載用戶配置文件選擇true
3.如果以上兩個方案都不能解決問題,就有可能是加載證書時沒有給定證書存儲標識
解決方法:在加載證書方法時使用以下方法,請注意第三個參數
X509Certificate2 cer = new X509Certificate2(cerPath, password, X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable);
req.ClientCertificates.Add(cer);