title: Uses of KeyedByTypeCollection in .Net?
body: <p>While checking out the generic collection in .net i found about KeyedByTypeCollection. Although I worked with it and got to know how to use it, I did not get in which scenario it will be useful.</p>
  
  <p>I read through <a href="https://stackoverflow.com/questions/178255/serviceprovider-cache-etc-done-with-generics-without-cast">ServiceProvider, cache etc. done with generics without cast</a>, but could not get much.</p>
  
  <p>I think, there must have a reason as to why it has been included in the .Net framework. Any body who have used the KeyedByTypeCollection can explain me why they used it or any body, if they know in which scenario potentially it can be used, can explain it to me. </p>
  
  <p>As more of a curiosity does any other languages support this type of collection ? </p>