This is a rather basic question, however I\'m still struggling with it a little.
IDisposable is implemented, when you want to enable the user of an object to free un
You should do this, since it's the only way for the user of your class to make sure that the internally held resource is properly disposed.
However, the pattern used for Dispose() may be slightly different than what is commonly written, in this case, since you don't have to differentiate between unmanaged and managed resources (your encapsulated resource is always treated as a "managed" resource).
I wrote a detailed blog post on this specific topic - Encapsulating IDisposable Resources.