On Tue, 25 May 2010 02:26:02 -0400, Kagamin <s...@here.lot> wrote:
Recently I've hit a problem with collections in C#. Given classes
class A {}
class B {}
And two collections Collection<A> and Collection<B> it's possible to
concat them into an array A[]. The efficient way to do it is to use
CopyTo(T[],int) method, but it accepts only array of exact collection
item's type, so I had to change the Collection<B> type to Collection<A>.
Did you mean
class B : A {} ?
According to this page, it says that an exception could be thrown if "Type
T cannot be cast automatically to the type of the destination array."
This implies that a destination array type to which T could automatically
be cast should work.
http://msdn.microsoft.com/en-us/library/0efx51xw%28v=VS.100%29.aspx
But the larger point that compile-time code generation can help with this
is valid.
-Steve