Чтобы расширить ответ Джона, причина, по которой это не работает, заключается в том, что в обычных, не динамических методах расширения кода работает полный поиск всех классов, известных компилятору, для статического класса, который имеет метод расширения.это соответствует.Поиск идет в порядке, основанном на вложенности пространства имен и доступных директивах using
в каждом пространстве имен.
Это означает, что для правильного разрешения вызова метода динамического расширения каким-то образом DLR должен знать во время выполнения , что все вложения пространства имен и директивы using
были вваш исходный код .У нас нет удобного механизма для кодирования всей этой информации в сайт вызова.Мы рассмотрели вопрос об изобретении такого механизма, но решили, что это слишком дорого, и привели к слишком большому риску графика, чтобы стоить того.