У меня есть следующий код С# (из библиотеки, которую я использую), которая пытается найти сертификат, сравнивающий отпечаток. Обратите внимание, что в следующем коде обе строки mycert.Thumbprint и certificateThumbprint являются строками.
var certificateThumbprint = AppSettings.CertificateThumbprint;
var cert =
myStore.Certificates.OfType<X509Certificate2>().FirstOrDefault(
mycert =>
mycert.Thumbprint != null && mycert.Thumbprint.Equals(certificateThumbprint)
);
Это не удается найти сертификат с отпечатком, потому что mycert.Thumbprint.Equals(certificateThumbprint) есть false, даже когда строки равны. mycert.Thumbprint == certificateThumbprint также возвращает false, а mycert.Thumbprint.CompareTo(certificateThumbprint) возвращает 0.

Я мог бы пропустить что-то очевидное, но я не могу понять, почему метод Equals терпит неудачу. Идеи?

