5 / 5 / 4
Регистрация: 20.01.2011
Сообщений: 350
|
|||||||||||||||||||||
1 | |||||||||||||||||||||
.NET 4.x Невозможно создать экземпляр интерфейса24.08.2014, 16:38. Показов 3851. Ответов 3
Метки нет (Все метки)
Всем привет. В общем делал "как по учебнику", но не работает и не могу понять почему(
Итак, есть три проекта: 1 проект - содержит всего один файл с описанием интерфейса:
По всему интернету только вот такой пример и приводится и у всех работает!
0
|
24.08.2014, 16:38 | |
Ответы с готовыми решениями:
3
Невозможно создать экземпляр абстрактного класса или интерфейса Невозможно создать экземпляр абстрактного класса или интерфейса "System.IO.TextWriter" Не могу создать экземпляр интерфейса Абстрактный класс, почему невозможно создать экземпляр? |
17689 / 12874 / 3366
Регистрация: 17.09.2011
Сообщений: 21,138
|
|
24.08.2014, 16:47 | 2 |
В метод CreateInstance передавайте bType, а не c.
Переменная c нужна для проверки, реализует ли класс, представленный типом bType, интерфейс IPluginInterface. Проверили, если реализует (с != null), то создаем экземпляр типа bType
1
|
5 / 5 / 4
Регистрация: 20.01.2011
Сообщений: 350
|
|||||||||||
24.08.2014, 16:53 [ТС] | 3 | ||||||||||
kolorotur, вот спасибо) Такую глупость сглупил))
И сразу возник вопрос =) В плагине я писал так
Да, я понимаю, что мне просто нужно убрать оттуда Version и брать это значение непосредственно с Assembly (так и сделаю), но интересно - почему так?
0
|
17689 / 12874 / 3366
Регистрация: 17.09.2011
Сообщений: 21,138
|
|
24.08.2014, 16:59 | 4 |
Ну потому что геттер у вас возвращает значение закрытой переменной _Version, изначальное значение которой равно null, а меняется только тогда, когда вызывается сеттер свойства Version.
Если он нигде не вызывается, то и значение переменной никогда не меняется. Кстати, GetExecutingAssembly вернет информацию об исполняющем файле, а следовательно и его версию, а не версию вашей дллки.
0
|
24.08.2014, 16:59 | |
24.08.2014, 16:59 | |
Помогаю со студенческими работами здесь
4
Ошибка: Невозможно создать экземпляр абстрактного класса Невозможно привести объект типа "System.__ComObject (Интерфейс наследован от интерфейса) Создать класс, такой, чтобы невозможно создать больше 3-х объектов этого класса Создать экземпляр List<T> Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |