This article provides the source code for an IReadOnlyStringDictionary and talks about the origins of the related dictionary interfaces in .NET