我的图书馆使用代码合同。
有没有办法将这些合同合并到沙堡生成的文档中?
编辑:原来这种方法已经过时了;只需安装Sandcastle Styles。
Sandcastle 本身并不支持它,但 Code Contracts 附带了所需的文件。
首先确保您正在为您的程序集生成文档,然后在项目的代码合同设置中,将合同参考程序集设置为“构建”,并选中“将合同发送到 XML 文档文件”复选框。
接下来,打开C:\Program Files (x86)\Microsoft\Contracts\Sandcastle\Sandcastle.zip
(或仅C:\Program Files\...
在 32 位安装上 - 与以下说明相同)。
您必须提取的内容取决于您是使用 MSI 还是从源安装 Sandcastle(它们实际上是不同的版本):
msi\vs2005\
,C:\Program Files (x86)\Sandcastle\Presentation\vs2005\
并覆盖任何冲突。source\vs2005\
,C:\Program Files (x86)\Sandcastle\Presentation\vs2005\
并覆盖任何冲突。最后,您需要创建一个新的Sandcastle 项目。您可以从向导中的旧主题和设置导入您的主题和设置。
然后你应该能够运行 Sandcastle 并在文档中有合同。
它确实适用于 Sandcastle,尽管需要进行一些调整才能完全集成它们。请参阅http://research.microsoft.com/en-us/projects/contracts/userdoc.pdf上 2011 年 2 月 4 日(或更高版本)的代码合同用户手册中的第 8.3 节
答案现在已经过时了。
Sandcastlestyles 现在似乎已被弃用,如果您尝试将随最新代码合同分发(截至 2013 年 9 月 13 日)提供的补丁应用到最新的 Sandcastle 发行版,那么它将破坏 Sandcastle,可能是因为补丁不再与沙堡版本。