This is a compiler error (slightly changed for readability).
This one always puzzled me. FxCop tells that this is a bad thing to return List and classes that are\derived from Collection<T> should be preferrable as return types.
Also, FxCop says that it is OK to use List<T> for internal data storage\manipulation.
Ok, I get it, but what I don't get is that compiler complains about trying to implicitly convert List<T> to Collection<T>. Isn't List<T> more interface-charged and functional?
Why prohibit implicit conversion?
And another question that stems from above: is new List<int>(some collection<int>) constructor expensive?
Thank you,
Valentin Vasiliev