2015-07-10 172 views
0

我收到錯誤:在本地開發計算機上請求URL時,根據驗證過程,遠程證書無效。我已經看過here根據使用自簽名證書的驗證程序,遠程證書無效

但我不能找到這個C#代碼的VB.NET代碼:

ServicePointManager.ServerCertificateValidationCallback += (o, c, ch, er) => true; 

OR

// Put this somewhere that is only once - like an initialization method 
ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateCertificate); 
... 

static bool ValidateCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) 
{ 
    return true; 
} 

有人可以幫我這個代碼的翻譯?我嘗試翻譯converter.telerik.com和carlosag.net,但那些失敗。

回答

1

而不是僅僅翻譯,讓我們首先確定該行所做的

ServicePointManager.ServerCertificateValidationCallback += (o, c, ch, er) => true; 

MSDN文檔說,ServerCertificateValidationCallback是類型的屬性RemoteCertificateValidationCallback

RemoteCertificateValidationCallback是與此簽名

'Declaration 
Public Delegate Function RemoteCertificateValidationCallback (_ 
    sender As Object, _ 
    certificate As X509Certificate, _ 
    chain As X509Chain, _ 
    sslPolicyErrors As SslPolicyErrors _ 
) As Boolean 
委託

This (o, c, ch, er) => true;是一個帶簽名RemoteCertificateVa的lamba表達式lidationCallback並始終評估爲真。

爲了做相同的VB.NET是

ServicePointManager.ServerCertificateValidationCallback = Function(o,c,ch,er) (true) 

This article will help和你在第二部分,但它是同樣的想法。

相關問題