An example of implementing the adapter pattern in C# by wrapping a NameValueCollection to make it behave like an IDictionary<string, string>
More information can be found on the Velir blog: http://blog.velir.com/index.php/2011/04/22/the-adapter-pattern-and-you/