Создание файлов HTML / справки из XML-документации VS 2010 C #

Я ищу хороший инструмент для создания файлов HTML / справки из моей XML-документации VS2010. Я нашел несколько коммерческих инструментов, например

Я уверен, что их больше, я просто привожу эти два в качестве примеров. Также существуют простые таблицы стилей XSLT для преобразования документации XML в HTML.

Что вы используете, например есть ли бесплатный инструмент для преобразования, возможно, в виде надстройки. Чтобы уточнить, в основном я нашел два типа инструментов:

  1. Те, которые конвертируют файл документации XML в разные целевые форматы, это то, что я ищу.
  2. Инструменты, помогающие мне создавать XML-документацию в исходном коде. Это не (!) То, что я ищу.

Спасибо за вашу помощь.


Комбинация Sandcastle / SHFB отлично работает. Спасибо всем, кто помог.

Некоторые замечания:

  1. NDoc кажется устаревшим, последние обновления датированы 2005 годом. Поэтому я пропустил это.
  2. Аналогичный поток, также очень подробный, можно найти здесь: https://stackoverflow.com/questions/3082044/how-to-turn-c-xml-doc-comments-into-something-useful Спасибо за подсказку!
  3. Есть несколько источников Sandcastle, последняя версия, которую я нашел, находится здесь: http://sandcastle.codeplex.com/
  4. Для создания MsHelp2 мне пришлось установить VS 2008 SDK, содержащий hscomp.exe. Есть версии 1.0 и 1.1, насколько я понял, версия 1.0 содержит компилятор. См. Helixsoft и Social MSDN для получения дополнительной информации.
  5. В моем случае сгенерированная WebHelp некорректно работает с Chrome. Он всегда перезагружает страницу index.html.
  6. Тема здесь показывает, как добавить информацию о пространстве имен в документацию Sandcastle.
  7. Обновление от ноября 2012 года. Для небольших проектов я использую Doxygen - мне кажется, его немного проще настроить.

person Horst Walter    schedule 24.01.2011    source источник
comment
возможный дубликат Как превратить C # Xml Doc-Comments в что-нибудь полезное?   -  person jgauffin    schedule 24.01.2011
comment
Ага, по каким-то причинам я этого не видел. Я обновлю это, как только проверю некоторые инструменты.   -  person Horst Walter    schedule 24.01.2011
comment
Могу ли я добавить NuDoc в список доступных API для чтения XML-документации? kzu.to/nudoc   -  person kzu    schedule 12.06.2013


Ответы (3)


Мы используем Sandcastle для преобразования и Sandcastle Help File Builder в качестве пользовательского интерфейса для управления проектами помощи. На мой взгляд, прелесть Sandcastle и SHFB в том, что помимо "средней" документации по исходному коду вы можете добавить дополнительную информацию, такую ​​как архитектура программы, шаблоны, которым необходимо следовать, или любой дополнительный концептуальный контент для вашего проекта, который не связан прямо к одному классу в вашей программе. Это можно сделать, создав дополнительные XML-файлы с помощью Microsoft Authoring Schema (их можно редактировать с помощью Visual Studio, так как XML-файл и схема для него доступны). С этими обоими инструментами довольно легко начать создавать документацию, подобную MSDN.

Давным-давно я попробовал docbook, который практически не отличается с технической стороны (файлы xml, содержащие информацию, и файлы xslt, чтобы преобразовать их в различные типы вывода). Но для нас это не было вариантом, потому что не существует трансформации, которая могла бы использовать XML-документацию, созданную Visual Studio (плюс трансформация концептуального контента была для нас довольно болезненной).

person jb_    schedule 24.01.2011

Еще два бесплатных инструмента, позволяющих создавать документацию из комментариев Xml:

person Tim Lloyd    schedule 24.01.2011
comment
Afaik, NDoc не очень хорошо поддерживает .NET 2 или новее. например документация для дженериков и т. д. - person codeulike; 01.03.2011
comment
Также есть необработанный простой API для чтения членов документации и создания чего-либо самостоятельно, просто реализовав простого посетителя: NuDoc kzu.to/nudoc - person kzu; 12.06.2013

Sandcastle + SHFB - отличная комбинация. Бесплатно и генерирует html, chm и т. Д.

person KristoferA    schedule 24.01.2011