У меня есть интерфейс [a] и класс-исполнитель [b]. [b] имеют свои собственные методы помимо реализованных.Что происходит с полиморфизмом в C#
//-----------
public interface a
{
void functionA();
}
//-----------
public class b:a
{
void functionA(){}
void functionB(){}
}
//------------
В проекте X внутри решения. Когда код I: [Проект это библиотека классов]
a test = new b();
test.functionB(); //It Works
В другом проекте с ссылками на библиотеки [Консоль приложения]
a test = new b();
test.functionB(); //Error CS1061 --> a doesn't have a method called function b
Извините, но имена на испанском языке. Интерфейс: pastebin.com/Unm5Adkd, исполнитель: pastebin.com/wmikck9H, программа: консольное приложение: pastebin.com/Yus91hQL ... Спасибо всем за вашу помощь. : P
Ни один из них не должен работать; 'a' не имеет метода, называемого' functionB'. –
Образец кода, который работает, является ошибкой. Приведенный вами код должен составлять только первый образец, если существует метод расширения. Код, который вы предоставили сам по себе, никогда не будет компилировать этот образец. Вы опустили какой-то код? – JaredPar
Вы объявляете первый пример, используя ключевое слово «var»? Я думаю, вам нужно опубликовать полный пример, демонстрирующий вашу проблему. –