Могу ли я просмотреть открытый API моей библиотеки классов в Visual Studio? - PullRequest
6 голосов
/ 15 марта 2011

Используя Object Browser, я вижу все, публичное, внутреннее, приватное.Как я могу видеть только открытый API моей библиотеки классов?

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

Ответы [ 4 ]

5 голосов
/ 02 апреля 2011

Вы можете использовать Отражатель и ограничить параметры видимости в «Вид» -> «Параметры» -> «Обозреватель» только «Общедоступные элементы»:

enter image description here

4 голосов
/ 03 апреля 2011

В браузере объектов для фильтрации только общедоступных элементов по отдельному классу. Это не фильтрует левую панель браузера, поэтому вы по-прежнему видите там приватные типы.

Object browser filtering

Вы также можете использовать инструмент ILDASM, который поставляется вместе с Windows SDK. Это дает больше возможностей для фильтрации и полностью фильтрует элементы из дерева. Это действительно просмотрщик разборок, он не такой красивый.

ILDASM

Вы можете скачать SDK здесь: http://msdn.microsoft.com/en-us/windows/bb980924

Будет установлено в: C: \ Program Files \ Microsoft SDKs \ Windows \ v7.1 \ bin \ NETFX 4.0 Tools \ ildasm.EXE

Вы также можете использовать Reflector. Раньше это было бесплатно, но теперь, похоже, платный продукт, который будет удалять бесплатную версию при обновлении. IMO отражатель является лучшим инструментом для этого, но только если вы хотите купить его. Он начинается с 35 долларов США за базовую версию http://www.reflector.net/.

1 голос
/ 16 октября 2013

При ссылке на библиотеку классов в другом проекте, когда я просматриваю ее в этом обозревателе объектов, она показывает только общедоступный API.

1 голос
/ 06 апреля 2011

Инструмент ApiChange позволяет выполнять запросы в командной строке и экспортировать результаты в Excel .Например,

ApiChange.exe -wt "public class *" <YourDll.dll> -in gac:\system.dll -excel 

Это будет искать все публичные классы в вашей DLL и искать пользователей ваших типов в system.dll.Там не будет ни одного, но вы получите полный список для всех ваших классов.

Формат запроса типа определяется следующим образом: Visibility ClrType TypeName

  • Видимость может быть общедоступной |внутренний
  • ClrType может быть классом |интерфейс |структура |enum
  • TypeName - полное имя типа или его часть, или только запрос пространства имен.Строка после последней.обрабатывается как фактическое имя типа.

Допустимые запросы типа:

  • System.Diagnostics.Stopwatch
  • Секундомер
  • Секундомер
  • stopw *
  • Система. *. Секундомер
  • общедоступный класс *

Ваш, Алоис Краус

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...