0

我有一个 ASP.NET MVC 项目。我使用需要客户证书的 WCF 服务。在控制台应用程序中,我将证书文件添加到解决方案中,将其设置为 copy=always 并且它可以很好地使用以下代码:

var certPath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "CertificateName.pfx");

var address = new EndpointAddress(new Uri("endpoint"), new DnsEndpointIdentity("Skoda.SenderWSSecured"));
_client = new SenderServiceClient("WSHttpBinding_ISenderService", address);
_client.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;
_client.ClientCredentials.ClientCertificate.Certificate = new X509Certificate2(certPath, "PasswordForTheCertificate");

在我的 ASP.NET MVC 解决方案中,我有一个 ASP.NET MVC 项目和一个类库。我的这项服务的代码在类库中。我将证书文件添加到类库项目并将其设置为 copy=always。但它不会被复制到输出中。我尝试将类型设置为 None/Content 但没有帮助。

我尝试将文件复制到构建后脚本中的输出,但它也没有帮助。当我编译解决方案时,我看到文件复制到输出目录,但是当我从 Visual Studio 运行我的应用程序时,它不在包含程序集 DLL 的目录中。

4

0 回答 0