Skip to main content
 首页 » 编程设计

.net之抛出 ObjectDisposeException 时应该传递什么作为 objectName

2024年06月03日13linjiqin

在实现 IDisposable 时,我知道在对象被释放后不应调用的每个方法都应抛出 ObjectDisposeException。但是应该传递给异常构造函数的名称对象的标准是什么?

请您参考如下方法:

我认为推荐的做法是抛出以下内容:

throw new ObjectDisposedException(GetType().FullName); 

或者包括检查,这两行代码位于每个需要它的方法的顶部(显然不是 Dispose 方法本身):

if (this.disposed) 
    throw new ObjectDisposedException(GetType().FullName); 

将其重构为一个小方法以提高可用性甚至可能会有所帮助。