2016-03-25 4 views
1

В VB.NET (или C#), как определить во время выполнения, какие пространства имён импортируются в свойствах проекта? Я буду использовать это для динамической компиляции, я бы хотел, чтобы динамический код автоматически имел тот же Импорт, что и его родительский проект.VB.NET определяет импортированные пространства имён проекта во время выполнения

Я уже видел «Поиск всех пространств имен в сборке с использованием Reflection (DotNET)». Это и другие примеры, которые я нашел, по-видимому, не решают мою проблему, так как я нашел, что они предоставляют список всех ссылок на проекты. Да, я хочу, чтобы все они были доступны, но некоторые из них полностью квалифицировали имена, а не все импортированные в корневое пространство имен. И я хочу выбрать только через существующий список свойств проекта «Импортированные пространства имен», а не поддерживать отдельный и избыточный список в динамическом классе выполнения.

+0

Возможный дубликат [Поиск всех пространств имен в сборке с использованием Reflection (DotNET)] (http://stackoverflow.com/questions/1549198/finding-all-namespaces-in-an-assembly-using-reflection-dotnet) – thehennyy

+0

Спасибо, но не то, что мне нужно. Я отредактировал свой первоначальный вопрос, чтобы лучше объяснить, что требуется. –

+0

Для меня его еще непонятно, чего вы хотите достичь. Можете ли вы представить полный пример? Какой результат вы ожидаете при каких условиях? – thehennyy

ответ

1

То, что вы описываете, невозможно скомпилированной сборкой, потому что ее функция компилятора. После компиляции есть только информация о используемых типах (что вы можете получить через отражение), а не как они были указаны в исходном коде.