Collections discrepencies

When the collection had their "Generic" version added, some features were changed:

  • IsSynchronized and SyncRoot do not exist in the ICollection<T>, when they exist in the ICollection.
  • IList<T> does not declare a IsFixedSize property.
  • The List<T> have an instance AsReadOnly method than returns a new ReadOnly version of the list, while ArrayList have a ReadOnly static method to do the same.
  • ReadOnly, Synchronized and FixedSize version where hidden and available to instantiation only through static method, whereas they are public derived class now.

The framework is getting messier... I am hoping, without really believing, that Microsoft will attempt to clean this up and make good use of the Obsolete attribute.

Leave a comment

Please note that we won't show your email to others, or use it for sending unwanted emails. We will only use it to render your Gravatar image and to validate you as a real person.