The IDisposable interface is typically implemented by objects that are using resources that need to be released in a timely manner rather than waiting for the garbage collector to clean them up. Another good use that I’ve come across is
Streaming Data Between Databases using SqlBulkCopy and SqlDataReader
One little known fact about SqlBulkCopy is that not only can the WriteToServer method use a DataTable, but it can also use any object that implements IDataReader. Since the SqlDataReader object implements the IDataReader interface, it is a perfect candidate
Semaphores in C#
A short while ago I had a need to limit simultaneous requests to a web service from a multi-threaded application to prevent timeouts. I learned about semaphores in school and knew this was the right approach, but I have never