Как вручную утилизировать RSACryptoServiceProvider? - PullRequest
4 голосов
/ 20 марта 2010

Я прочитал в MSDN ( см. Важное примечание ), что RSACryptoServiceProvider должен быть удален. Они приводят пример:

using (RSACryptoServiceProvider RSA = new RSACryptoServiceProvider())

Теперь я пытаюсь включить RSACryptoServiceProvider в MyClass, используя его в нескольких методах. С этой настройкой я не могу использовать оператор using.

Вместо этого я пытаюсь вызвать метод .Dispose () объекта RSACryptoServiceProvider в подходящее время, но затем я получаю сообщение об ошибке компиляции:

`System.Security.Cryptography.AsymmetricAlgorithm.Dispose (bool) 'недоступен из-за уровня защиты

Разве RSACryptoServiceProvider не должен использоваться дольше одного вызова функции (с использованием оператора using)?

Как я могу это исправить, не вызывая опцию Dispose?

1 Ответ

1 голос
/ 20 марта 2010

Метод Clear выглядит так, как будто он вызовет метод dispose:

Этот метод является простым вызовом метода IDisposable.Dispose. Вызов Dispose позволяет перераспределять ресурсы, используемые классом AsymmetricAlgorithm, для других целей. Для получения дополнительной информации об утилизации см. Очистка неуправляемых ресурсов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...