В моей библиотеке используются кодовые контракты.
Есть ли способ включить эти контракты в документацию, созданную песочным замком?
В моей библиотеке используются кодовые контракты.
Есть ли способ включить эти контракты в документацию, созданную песочным замком?
Изменить: оказалось, что этот метод устарел; просто установите Sandcastle Styles.
Sandcastle изначально не поддерживает его, но Code Contracts поставляется с необходимыми файлами.
Сначала убедитесь, что вы создаете документацию для своей сборки, затем в настройках Code Contracts для вашего проекта установите для параметра Contract Reference Assembly значение «Build» и установите флажок «Emit Contracts into XML doc file».
Затем откройте C:\Program Files (x86)\Microsoft\Contracts\Sandcastle\Sandcastle.zip
(или просто C:\Program Files\...
при 32-битной установке — и то же самое для инструкций ниже).
То, что вам нужно извлечь, зависит от того, установили ли вы Sandcastle с помощью MSI или из исходного кода (на самом деле это разные версии):
msi\vs2005\
до C:\Program Files (x86)\Sandcastle\Presentation\vs2005\
и перезапишите любые конфликты.source\vs2005\
до C:\Program Files (x86)\Sandcastle\Presentation\vs2005\
и перезапишите любые конфликты.Наконец, вам нужно создать новый проект Sandcastle. Вы можете импортировать свои темы и настройки из старой в мастере.
Тогда вы сможете запустить Sandcastle и иметь контракты в документации.
Он работает с Sandcastle, хотя есть некоторые настройки, необходимые для их полной интеграции. См. раздел 8.3 в Руководстве пользователя Code Contracts от 04.02.2011 (или более поздней версии), доступном по адресу http://research.microsoft.com/en-us/projects/contracts/userdoc.pdf
Ответы уже устарели.
Sandcastlestyles теперь кажется устаревшим, и если вы попытаетесь применить патч, поставляемый с последним дистрибутивом Code Contracts (по состоянию на 13 сентября 2013 г.), к последнему дистрибутиву Sandcastle, то он предположительно сломает Sandcastle, потому что патч больше не синхронизирован с выпуск Sandcastle.