Por que String.Equals está retornando false?
Eu tenho o seguinte código C # (de uma biblioteca que estou usando) que tenta encontrar um certificado comparando a impressão digital. Observe que, no código a seguir, ambosmycert.Thumbprint
ecertificateThumbprint
são cordas.
var certificateThumbprint = AppSettings.CertificateThumbprint;
var cert =
myStore.Certificates.OfType<X509Certificate2>().FirstOrDefault(
mycert =>
mycert.Thumbprint != null && mycert.Thumbprint.Equals(certificateThumbprint)
);
Falha ao encontrar o certificado com a impressão digital porquemycert.Thumbprint.Equals(certificateThumbprint)
éfalse
mesmo quando as cordas são iguais.mycert.Thumbprint == certificateThumbprint
também retornafalse
, enquantomycert.Thumbprint.CompareTo(certificateThumbprint)
retorna 0.
Eu posso estar perdendo algo óbvio, mas não consigo descobrir por que oEquals
método está falhando. Idéias?