Pull to refresh

Comments 7

я может не особо опнимаю, но что мешает нам сделать Delegate.CreateDelegate(typeof(MethodDelegate), mi)
и потом пользоваться результатом?
В данном случае — то, что мы не знаем типы аргументов и возвращаемого значения, и делегат у нас — сферический в вакууме. Но такая ситуация слегка надуманная, да.
понятно, просто не полностью понял задачу.
Не то, чтобы не знаем, а не можем использовать, так как нет прямой рефы на другую сборку…
Ваш вариант тоже вариант, но…
Во-первых: делегат тогда должен иметь параметры тех типов, которые могут быть неизвестны.
Во-вторых: делегат можно создать только для конкретного экземляра
А как потом работать с типами, которые неизвестны? Создать экземпляр для передачи в параметрах там, или что-то получить из возвращенного значения?
Весь код через динамические методы переписывать? А кто это потом не поленится поддерживать? :)
Есть интерфейсы… Есть классы, которые имплементят эти интерфейсы…
Но не до всех матодов этих классов можно добраться через интерфейс…
Sign up to leave a comment.

Articles