无法从实现中访问接口中的 C# 静态方法 class

C# Static method in interface cannot be accessed from the implementing class

接口 IA 中的方法 SomeStaticMethod 不能直接从实现该接口的 class A 访问。我错过了什么吗?

public interface IA {
    public static int SomeStaticMethod() => 4;    
}

public class A : IA {
    public static void Bidule() {
        SomeStaticMethod(); //DO NOT COMPILE
        IA.SomeStaticMethod(); //COMPILES
    }
}

如果将接口 IA 更改为 class,它就可以工作。

public class IA {
    public static int SomeStaticMethod() => 4;    
}

public class A : IA {
    public static void Bidule() {
        SomeStaticMethod(); //NOW it works
    }
}

一个class可以实现多个接口。如果您在两个接口中定义了具有相同签名的静态方法,编译器将无法决定应该调用其中的哪一个。这是大多数 OO 语言试图避免多重继承的(许多)原​​因之一,虽然它可能很有用。