C# 如何手动处置CryptoServiceProvider?
我在MSDN()上读到必须处置RSACryptServiceProvider。他们举了一个例子:C# 如何手动处置CryptoServiceProvider?,c#,dispose,rsacryptoserviceprovider,C#,Dispose,Rsacryptoserviceprovider,我在MSDN()上读到必须处置RSACryptServiceProvider。他们举了一个例子: using (RSACryptoServiceProvider RSA = new RSACryptoServiceProvider()) 现在,我正试图将RSACryptoServiceProvider包含到MyClass中,并在几个方法中使用它。使用此设置时,我无法使用using语句 相反,我尝试在适当的时间调用RSACryptoServiceProvider对象的.Dispose()方法,但
using (RSACryptoServiceProvider RSA = new RSACryptoServiceProvider())
现在,我正试图将RSACryptoServiceProvider包含到MyClass中,并在几个方法中使用它。使用此设置时,我无法使用using语句
相反,我尝试在适当的时间调用RSACryptoServiceProvider对象的.Dispose()方法,但随后收到编译错误消息:
`由于其保护级别,System.Security.Cryptography.Depose(bool)无法访问
RSACryptServiceProvider的使用时间不应该超过一个函数调用(使用using语句)
我如何解决这一问题,是否不将Dispose call作为一个选项 该方法看起来将调用dispose方法:
此方法是对IDisposable.Dispose方法的简单调用。
调用Dispose允许为其他目的重新分配Gorithm类使用的资源。有关Dispose的更多信息,请参阅清理非托管资源
@phq:或者,如果出于某种原因您坚持调用Dispose,则将该值强制转换为IDisposable,然后根据强制转换的结果调用Dispose。但最好照文件上说的做,并称之为明确。