我有一个界面:
public interface: IA { ... }
我尝试将其扩展到
class public A : IA {
private static void foo(this IA a) {
a.foo();
}
}
但是编译器说,它找不到foo(),第一个参数是IA类型。 我该如何解决?
答案 0 :(得分:9)
您是否已将扩展程序类标记为静态?即具有扩展方法的类必须标记为静态,扩展方法本身也必须是静态的。
public static class AExtensions : IA
{
public static void foo(this IA a) { a.foo(); }
}