Получение Полностью определенного имени блока класса в Visual Studio

Я пишу специализированную отражающую библиотеку для некоторой специализированной пользовательской доменной логики, и та библиотека собирается использовать конфигурационные XML-файлы, которые динамично разрешат Систему. Текстовые объекты во времени выполнения. Однако при записи конфигурационных XML-файлов, это - что-то вроде боли для записи типов, потому что они должны быть полностью определенными именами сборки для Типа. GetType () для разрешения их. Существует ли способ узнать AssemblyQualifiedName объекта в Visual Studio, не обращаясь к записи программы для распечатывания их в файл или стандарт или что-нибудь как этот?

7
задан starblue 10 April 2010 в 07:07
поделиться

3 ответа

Я собираюсь изменить свой комментарий на правильный ответ, потому что после быстрой игры то, что я предложил, делает именно то, что вы хотите.

Скачайте бесплатную версию Reflector отсюда , распакуйте ее и запустите. Перетащите скомпилированную версию вашей сборки на него, и рядом с тегом Name в секции info в нижней части диалога появится ее полное имя, готовое для того, чтобы вы могли просто скопировать и вставить его оттуда.

Обратите внимание, что вся необходимая информация также доступна, если щелкнуть правой кнопкой мыши на скомпилированном файле, выбрать Свойства, затем перейти на вкладку Детали, хотя вы не можете просто скопировать/вставить оттуда.

3
ответ дан 7 December 2019 в 01:19
поделиться

Если бы я был в вашей ситуации, я бы просто открыл окно немедленного доступа (Отладка-> Windows-> Immediate) и используйте typeof (TypeFullName) .AssemblyQualifiedName .

Для этого вам необходимо указать тип с полным пространством имен, и это также имеет побочный эффект автоматического запуска проекта запуска решения. Этот побочный эффект можно уменьшить, временно установив библиотеку классов в качестве проекта запуска решения.

Пример:

typeof(System.Windows.Forms.Button).AssemblyQualifiedName
7
ответ дан 7 December 2019 в 01:19
поделиться

Я не уверен, понял ли я проблему. Вы хотите программно получать полные имена ваших типов? В таком случае вы всегда можете использовать typeof (YourType) .FullName или typeof (YourType) .AssemblyQualifiedName .

Что я могу придумать, так это пометить все типы, которые вам нужны, с помощью некоторых настраиваемых атрибутов, чтобы их было легко найти в сборках для извлечения их имен. Я не думаю, что вы можете найти какой-то способ, не просматривая каждый из нужных вам типов чтобы извлечь его имя.

0
ответ дан 7 December 2019 в 01:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: