2011-03-21 74 views
6

我正在尝试为使用SandCastle的WCF服务生成外部文档。我如何告诉SandCastle使用WCF属性(如ServiceContract)来命名函数和实体,而不是它们在程序集中的名称?使用SandCastle生成WCF文档

回答

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文档以供表,程序等生成参考文档。事实上,它的结果非常好,最后努力也不错。

不管怎样,我会继续这个问题的情况下,盯着那里确实存在一个“现成”的解决方案:-)

+4

我最后写一些“现成”的软件自己生成的文件出来的DLL和代码中的XMLDoc评论。我会咨询我的雇主,看看我能不能GitHub。 – 2011-08-31 10:51:03

+2

您是否拥有发布代码生成代码的权限? – 2012-03-27 12:35:40

相关问题