Это надуманный пример:
public static class MyExtensions
{
public static void MyMethod( this MyInterface obj, string txt )
{
}
}
interface MyInterface {}
public MyDerived : MyInterface
{
void DoStuff()
{
MyMethod( "test" ); // fails; compiler can't find MyMethod?
}
}
В моем примере выше я пытаюсь вызвать метод расширения, назначенный интерфейсу из моего производного класса. Компилятор здесь не работает и говорит, что MyMethod не существует в текущем контексте. У меня есть все соответствующие операторы использования в моем файле CS, поэтому я не уверен, что происходит.