迭代接口列表

时间:2012-07-03 09:09:04

标签: c#

我有一个类似T对象的接口,如此

public interface IService<T>

我有很多这些接口都有不同类型的T。如何将这些接口添加到某种列表中,遍历列表并调用接口使用的常用方法。有任何想法吗?有替代方法吗?

如果我将它添加到列表中,我就是看不到正确转换类型T的方法。

1 个答案:

答案 0 :(得分:13)

如果方法很常见,那么可能它不依赖于T,所以你应该可以这样做:

interface IService {
    void TheMethod();
}
interface IService<T> : IService {
    // other stuff
}

然后有List<IService>,只有:

foreach(var svc in list) svc.TheMethod();