Proper Use of IDisposable in C#: Managed vs Unmanaged Resources | CodeTrail