感谢网上众多的高手,今天共有N个步骤:
1、证书下载下来,需要安装,证书的密码是商户号(默认)。
2、我用的是微信支付的源码,没有修改配置文件,在Lib/config.cs下有个
需要配置。
3、本以为所有的都已经正常了,结果退款提示“系统找不到指定的文件”,在核对了文件名后,终于知道还有Lib/HttpService.cs下的这处源码需要修改(注释掉的是原文件的代码,后面的是修改的代码):
//是否使用证书
if (isUseCert)
{
string path = HttpContext.Current.Request.PhysicalApplicationPath;
//X509Certificate2 cert = new X509Certificate2(path + WxPayConfig.SSLCERT_PATH, WxPayConfig.SSLCERT_PASSWORD);
X509Certificate2 cert = new X509Certificate2(path + WxPayConfig.SSLCERT_PATH, WxPayConfig.SSLCERT_PASSWORD, X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.MachineKeySet);
request.ClientCertificates.Add(cert);
Log.Debug("WxPayApi", "PostXml used cert");
}