Использование рекомендованного шаблона Dispose () , где вы считаете события управляемым ресурсом для очистки, должно обрабатывать это. Объект A должен отменить свою регистрацию в качестве прослушивателя событий от объекта B, когда он расположен ...
Я провел много времени по этой проблеме и затем понял, что не проверяю подпись с правильным сертификатом.
, Таким образом, я решил проверить сертификат, который я получаю в файле ответа XML от Azure:
signedXml.LoadXml((XmlElement)nodeList[0]);
X509Certificate2 serviceCertificate = null;
foreach (KeyInfoClause clause in signedXml.KeyInfo)
{
if (clause is KeyInfoX509Data)
{
if (((KeyInfoX509Data)clause).Certificates.Count > 0)
{
serviceCertificate = (X509Certificate2)((KeyInfoX509Data)clause).Certificates[0];
}
}
}
Затем:
bool bTest = signedXml.CheckSignature(serviceCertificate , true);
Эти bTest
значение было наконец установлено к истинному.