我在一个项目中使用FileHelpers和类MultiRecordEngine
public sealed class MultiRecordEngine
: EventEngineBase<object>, IEnumerable, IDisposable
此类实现IDisposable
,但没有公共 Dispose 方法...
MultiRecordEngine eng = null;
eng.Dispose(); // <---- Results in compilation error
检查GitHub 上的此类代码,我可以看到这里明确实现的方法,第 913 行:
void IDisposable.Dispose()
{
Close();
GC.SuppressFinalize(this);
}
那么...为什么我不能调用该方法?这是有意的吗?如果是这样,这是一个好的做法,在什么情况下?