I am using FileHelpers in one project, and the class MultiRecordEngine
public sealed class MultiRecordEngine
: EventEngineBase<object>, IEnumerable, IDisposable
This class implements IDisposable
, BUT don't have a public Dispose method...
MultiRecordEngine eng = null;
eng.Dispose(); // <---- Results in compilation error
Inspecting this class code on GitHub I can see the method implemented explicitly here, line 913:
void IDisposable.Dispose()
{
Close();
GC.SuppressFinalize(this);
}
So... Why cannot I invoke the method? Is this intended, and if so, is it a good practice, and in what circumstances?