我正在尝试使用SandCastle为WCF服务生成外部文档。如何告诉SandCastle使用像ServiceContract
这样的WCF属性来命名函数和实体而不是它们在程序集中的名称?
答案 0 :(得分:1)
好的,以下内容不是您问题的直接答案,但也许它无论如何都会有所帮助。
如果您要创建“外部服务文档”,那么外部文档可能并不真正适用于.NET开发人员,您甚至可能不希望实现细节(必要)可见。因此,典型的API样式文档可能不适合。
除了API样式文档之外,Sandcastle还支持所谓的“概念文档”。这基本上是“自由文本”,当然是某种XML方言。我稍后再说。
好的,您首先要为服务接口生成一个WSDL文件(通常是将?WSDL
附加到服务的URI或在服务程序集上使用SVCUTIL.EXE
,这在自动构建期间更适合)
然后是困难的部分。您需要创建一些将WSDL转换为MAML文档的东西(想到一个XML样式表)。 MAML(微软援助标记语言)实际上是Sandcastle使用的核心格式。
我认为您最好的选择是使用Sandcastle Helpfile Builder从这些文件中创建项目,以创建CHM,HTML页面或其他内容。
基本上,一旦你有了MAML文件,你就会回到“标准”Sandcastle工具链中。
我知道这听起来很像一些工作,可能就是这样。我在过去做过类似的事情,我会使用SMO查询SQL Server数据库,为表格,程序等生成MAML文档,以生成参考文档。实际上,它的效果非常好,最后努力也不算太差。
无论如何,如果确实存在“现成的”解决方案,我会保持这个问题: - )