Здравствуйте, fspirit, Вы писали:
F>Ну, это я уже отчаился, когда не мог привести к базовому абстрактному типу и решил проверить конкретный.
Тогад лучше опиши проблему (исходную) и скорее всего решение окажется куда проще.
F>Все-таки мне непонятно, почему вынужден приводить его к интерфейсу. Как-то это нелогично.
Создаваемый тип определен в сборке неизвестной на момент компиляции. Логично? Значит мы не можем использовать его из программного кода исходной борки. Тоже вроде логчно...
Но мы можем описать в исходной сборке тип который можно реализовать в динамической сборке. Так? Ну, вот мы и экспортируем тип в динамическую сборку где его успешно реализуем. Далее
по имени создаем экземпляр класса из динамической сборки. При этом он возвращается как object. С object-ом мы можем работать только чрезе рефлексию. Привести object к типу из динамической сборки мы не можем, но мы можем привести object и нашему интерфейсу, ведь он известен в исходной сборке и реализован в созданном нами классе. Вот мы это и делаем. Ну, а дальше работаем с интерфейсом полиморфно (нам ведь все равно кто его раелизует!).
... << RSDN@Home 1.2.0 alpha rev. 611>>