我的问题的一部分在这个答案中得到了解答。
但是,还有另一种情况:
public class A { }
public static class ExtendedA
{
public static void Ext(this A a) { }
}
public static class ExtendedB
{
public static void Ext(this A a) { }
}
public static class App
{
public static void Main()
{
A a = new A();
a.Ext();
}
}
C#编译器是如何选择调用哪个方法的呢?