ОК, следующий ответ не будет прямым ответом на ваш вопрос, но, возможно, это все равно поможет.
Если вы говорите, что хотите создать «внешнюю документацию службы», эта внешняя документация, вероятно, на самом деле не предназначена для разработчиков .NET, и вы можете даже не захотеть, чтобы эта деталь реализации была (обязательно) видимой. Так что типичная документация по стилю API может не подойти в любом случае.
Рядом с этой документацией в стиле API Sandcastle также поддерживает так называемую «концептуальную документацию». Что в основном является «свободным текстом», конечно, на определенном диалекте XML. Я вернусь к этому позже.
ОК, сначала вы должны сгенерировать файл WSDL для интерфейсов службы (обычно добавляя ?WSDL
к URI службы или используя SVCUTIL.EXE
в сборке службы, которая лучше подходит для автоматической сборки).
Затем наступает сложная часть. Вам нужно создать что-то, что преобразует WSDL в документы MAML (на ум приходит таблица стилей XML). MAML (язык разметки Microsoft Assistance) - это, так сказать, основной формат, используемый Sandcastle.
Я думаю, что вам лучше всего использовать Sandcastle Helpfile Builder , чтобы создать проект из этих файлов для создания CHM, HTML-страниц или чего-либо еще из него.
По сути, как только у вас есть документы MAML, вы возвращаетесь в «стандартную» цепочку инструментов Sandcastle.
Я знаю, это звучит как какая-то работа, и, вероятно, это так. В прошлом я делал что-то сопоставимое, где я использовал SMO для запроса к базе данных SQL Server, чтобы генерировать MAML-документы для таблиц, процедур и т. Д. Для создания справочной документации. На самом деле, это сработало довольно хорошо, и в итоге усилия были не так уж и плохи.
В любом случае, я буду держать этот вопрос в поле зрения, если на самом деле существует решение "с полки": -)