У меня есть лучший ответ: FIXML.
Клонирование комментарии с GhostDoc \ AtomineerUtils, конечно, работает подход, но он имеет существенные недостатки, например .:
- Когда оригинальный комментарий изменяется (что часто случается во время разработки), его клон не является.
- Вы производите огромное количество дубликатов. Если вы используете инструменты анализа исходного кода (например, Duplicate Finder в Team City), он будет найти в основном ваши комментарии.
Как уже было сказано, есть <inheritdoc>
тег в Sandcastle, но он имеет ряд недостатков по сравнению с FIXML:
- Sandcastle производит файлы справки компилируется HTML - это не изменяет
.xml
файлы , содержащий извлеченные комментарии XML. Но эти файлы используются многими инструментами, , включая .NET Reflector и браузер класса \ IntelliSense в Visual Studio .NET. Итак, если вы используете только Sandcastle, вы не увидите там унаследованной документации.
- Реализация Sandcastle менее эффективна. Например. нет
<see ... copy="true" />
.
Для получения дополнительной информации см. Sandcastle's <inheritdoc>
description.
Краткое описание FiXml: это постпроцессор XML-документации, созданный C# \ Visual Basic .Net. Он реализован как задача MSBuild, поэтому его легко интегрировать в любой проект. В нем рассматривается несколько досадных случаев, связанных с написанием XML документации на следующих языках:
- Нет поддержки наследуя документацию от базового класса или интерфейса. I.e. документация для любого переопределенного элемента должна быть написана с нуля, хотя обычно вполне желательно наследовать, по крайней мере, ее часть.
- Нет поддержки для вставки часто используемых шаблонов документации, таких как «Этот тип не синглтон. - использовать его свойство
<see cref="Instance" />
получить только экземпляр этого», или даже «Инициализирует новый экземпляр <CurrentType>
класса.»
Для решения упомянутых проблем, следующие дополнительные теги XML предусмотрены:
<inheritdoc />, <inherited />
теги
<see cref="..." copy="..." />
Attrib ute в <see/>
тег.
Адрес its web page и download page.
Может ли GhostDoc изменить ссылочный xml-файл или он изменит фактический код? Если первое верно, это можно использовать вместе с Sandcastle ... –
GhostDoc изменяет код –