Может ли intellisense экспортироваться или извлекаться из Visual Studio в текстовый файл? - PullRequest
2 голосов
/ 15 января 2009

Я пытаюсь написать некоторую документацию для веб-службы, предоставленную одним из наших поставщиков для приложения, которое мы интегрируем. Связка интерфейса - это пользовательские объекты, определенные в самом веб-сервисе. Поставщик оказал значительное сопротивление предоставлению любой документации для этого приложения, и поэтому я взял на себя обязанность выполнять их работу за них [вопреки моему здравому смыслу].

Документация, которую они предоставляют , откровенно говоря, смущает, и я пытаюсь сделать как можно более короткую работу над этим, чтобы составить несколько документов хорошего качества. Я знаю, что, поскольку у меня нет доступа к их источнику, я не могу просто запустить его через nDoc / Sandcastle, чтобы выплюнуть документацию по API, но мне было интересно, существует ли (как на полпути) простой способ экспортировать intellisense в текстовый файл без необходимости написания утилиты для конкретной итерации каждого из определенных типов объектов и отображения элементов в тексте?

Если бы я мог это сделать, он по крайней мере удостоверился бы, что у меня есть структура документа хорошего качества, где я могу просто заполнить пробелы. Необходимость переходить туда и обратно в Visual Studio, чтобы проверять интеллектуальную значимость каждого ученика, - очень трудоемкий способ сделать это.

У кого-нибудь есть идеи?

Ответы [ 7 ]

6 голосов
/ 15 января 2009

Если это веб-служба, которую вы пытаетесь задокументировать, не могли бы вы разобрать WSDL?

3 голосов
/ 15 января 2009

Если вы обращаетесь к удаленному веб-сервису, то, я думаю, у вас есть доступ к соответствующему WSDL: как насчет его синтаксического анализа и поиска только необходимой информации? Или с помощью инструмента для этого (я гуглил для "генератора документации wsdl")? Или даже с помощью WSDL.exe для создания фиктивного кода из WSDL, а затем документировать его, возможно, с помощью GhostDoc? НТН

2 голосов
/ 15 января 2009

Не могли бы вы использовать Reflection, чтобы избавиться от методов и т.д.?

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

1 голос
/ 15 января 2009

Я думаю, что VS.net генерирует документацию для intellisense. Для существующих сборок он уже находится в вашей файловой системе (например, C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ ru)

Попробуйте использовать сборку от производителя в VS.NET. Используйте Process Explorer или любой другой инструмент из sysinternals, чтобы увидеть, какие файлы загружаются. Я уверен, что вы обнаружите, что для пользовательской сборки создан файл xml (который используется для отображения Intellisense и документации, доступной с ним).

Надеюсь, это поможет.

РЕДАКТИРОВАТЬ: Я думаю, что в той же папке (где находятся ваши пользовательские сборки) будут XML-файлы для документации.

0 голосов
/ 15 января 2009

Может быть, это безумие, но не могли бы вы сделать снимок полного списка и запустить его через программу OCR?

0 голосов
/ 15 января 2009

Не могли бы вы просто использовать отражатель (от redgate) для просмотра сборки (декомпилированной) вместо воспроизведения документа API. Я не уверен, что еще вы могли бы отразить и построить на своем документе, который вы не увидели бы вживую в отражателе (конечно, это будет зависеть от написания читаемого кода .

0 голосов
/ 15 января 2009

Если у вас есть dll, не могли бы вы декомпилировать их, а затем перекомпилировать и использовать nDoc? Это должно дать вам разумное начало.

...