如何为多个不同的泛型类型定义约束

时间:2011-01-12 11:00:14

标签: .net

我有以下接口定义

interface IStoreItem
{

}

interface ILoadItem
{

}

现在我想实现一个可以处理这些交互项的集合,但通常一个实现IStoreItem的类将无法实现ILoadItem。那么有什么方法可以定义这样的约束:

public class NetworkingCollection<T> : List<T>
   where T : IStoreItem or ILoadItem
{

}

1 个答案:

答案 0 :(得分:5)

不支持此功能。

您需要为要约束的每个接口使用不同的类。


或者,如果您从公共接口(例如IStoreItem)继承ILoadItemIGenericItem,则可以约束到父接口。