我有一种情况,我正在定义一个接口,然后直接使用它,例如:
Dim x as IWhatever = new implementationOfIWhatever()
哪个没问题,但是实现也没有什么也实现了IDispoable所以我希望能够做x.Dispose
或理想Using x
但是得到的错误是没有声明这个或者必须实现IDispoable,因为我无论如何没有定义Dispose或实现IDispoable。
我如何创建合同,无论是否也会实现IDispoable,或者我不能这样做,并且必须将.Dispose添加到我的界面并接受我不能使用Using
。
答案 0 :(得分:2)
让IWhatever
继承自IDisposable
。这将迫使implementationOfIWhatever
实施Dispose
方法,并允许您将IWhatever
个实例与Using
一起使用。