在以下示例中,鉴于编译器知道 a是 a ,为什么我不能collectionA
转换为?collectionB
TItem
A<T>
public class A<T>
{
}
public void Foo<TItem, T> () where TItem : A<T>
{
var collectionA = new List<TItem>();
var collectionB = (List<A<T>>)collectionA; // "Cannot cast" error here
}