在RSAKeyValue上使用扩展方法时出现ObjectDisposedException

时间:2010-07-06 21:00:52

标签: c# cryptography rsa objectdisposedexception

我试图为RSAKeyValue编写以下简单的扩展方法:

public static class RSAKeyValueExtensions
{
    public static string ToXmlString(this RSAKeyValue keyValue)
    {
        return keyValue.GetXml().OuterXml;
    }
}

然而,似乎每当我使用ToXmlString时,我都会遇到异常:

  

System.ObjectDisposedException:安全句柄已关闭

有没有办法封装GetXml().OuterXml所以如果没有获得ObjectDisposedException,我的代码中的各个地方都不会重复它?

1 个答案:

答案 0 :(得分:1)

我认为问题不在于我使用的是扩展方法,我认为我得到了这个异常,因为我在GetXml()实例之后调用了基础RSAKeyValue上的RSACryptoServiceProvider已经被处理掉了。