0

我有如下课程

public class Relation<T1, T2> where T1: Entity where T2: Entity
{
}

我想让类派生自 Relation 类型的列表/集合

public class RelationList<T>: List<Relation>> 
{

}

我已经尝试过,但无法正确处理。即使是指向 SO 的右指针也会有所帮助

4

1 回答 1

4

因为您的Relation类是泛型的,所以当您从Relation.

要么作为

public class RelationList: List<Relation<MyEntity2, MyEntity2>>
{
}

或作为

public class RelationList<T1, T2> : List<Relation<T1, T2>> 
        where T1: Entity
        where T2: Entity
{
}

如果您希望RelationList能够保持Relation<T1, T2>无论如何指定T1T2您应该使用附加接口:

public interface IRelation
{
}

public class Relation<T1, T2> : IRelation
    where T1: Entity where T2: Entity
{
}

public class RelationList : List<IRelation>
{
}
于 2014-01-11T06:05:02.787 回答