2

我的WCF客戶端配置有這個在它:如何在代碼中創建具有證書標識的終端地址?

... 
<identity> 
    <certificate encodedValue="encoded data" /> 
</identity> 
... 

我不希望有使用App.config文件,所以我試圖在代碼中重現這一點,但是我不能這樣做。我已經試過從base 64轉換這個字符串,並將它作爲X509Certificate2類的原始數據傳遞,如果我這樣做,我得到一個CryptographicException:「無法找到請求的對象」。

我以爲這可能是因爲格式是DER,但我不確定是否是這種情況,如果是我不知道如何將其轉換爲DER格式。

有誰知道我可以如何加載代碼?

回答

2

嘗試這樣的事情,使用和EndpointIdentity當你創建你的EndpointAddress:

X509Certificate2 certificate = X509Certificate2.CreateFromCertFile("r certificate file goes here") as X509Certificate2; 
EndpointAddress endpointAddress = new EndpointAddress(new URI("Your service URI goes here"), EndpointIdentity.CreateX509CertificateIdentity(certificate)); 

對上述樣品的來源是:http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/c343c266-850e-4eec-9e6f-a42b9659527c/

相關問題