我扩展了如下具体课程
public static string ToMyString(this IInterface obj)
{
return "some string";
}
这样我就可以在具体参考上调用上述扩展名
Concrete c = new Concrete(); // Concrete is an implementer of IInterface
c.ToMyString();
以同样的方式,我创建了另一个扩展,例如
public static string ToMyString(this List<IInterface> obj)
{
return "some string";
}
但是我不能像对单个具体对象那样调用它
List<Concrete> c = new List<Concrete>();
c.ToMyString();
这是编译时错误!