我有一个类似T对象的接口,如此
public interface IService<T>
我有很多这些接口都有不同类型的T。如何将这些接口添加到某种列表中,遍历列表并调用接口使用的常用方法。有任何想法吗?有替代方法吗?
如果我将它添加到列表中,我就是看不到正确转换类型T的方法。
答案 0 :(得分:13)
如果方法很常见,那么可能它不依赖于T
,所以你应该可以这样做:
interface IService {
void TheMethod();
}
interface IService<T> : IService {
// other stuff
}
然后有List<IService>
,只有:
foreach(var svc in list) svc.TheMethod();