Видимо, методы расширения не работают на подклассах, или это только у меня?
private class Parent
{
}
private class Child
{
}
public static class Extensions
{
public static void Method(this Parent parent)
{
}
}
//Test code
var p = new Parent();
p.Method(); // <--- compiler like
var c = new Child();
c.Method(); // <--- compiler no like
UPDATE
В этом вопросе есть опечатка (которую я оставляю, чтобы остальное имело смысл) - я забыл сделать Child
наследованным от Parent
.
Как оказалось, моя настоящая проблема заключалась в том, что у меня не было соответствующего using
заявления.
(К сожалению, я не могу удалить, так как слишком много голосов против).