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

Her*_*sch 0 .net

我定义了以下接口

interface IStoreItem
{

}

interface ILoadItem
{

}
Run Code Online (Sandbox Code Playgroud)

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

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

}
Run Code Online (Sandbox Code Playgroud)

Ode*_*ded 5

这不受支持.

对于要约束的每个接口,您将需要一个不同的类.


或者,如果您继承IStoreItemILoadItem从公共接口(例如IGenericItem)继承,则可以约束到父接口.