因此,我使用WCF,并希望记录我的接口和服务,以便为另一家公司提供内部应用程序。什么是记录这些接口的最佳方式?我宁愿让文档与代码内联,然后有一些美化输出HTML的东西,但我不确定是否有推荐的方法来执行此操作。文档WCF接口的最佳方式?
回答
请使用XML文档。有很多智能元标签可以让你把代码样本放在其中,操作之间的引用,抛出的异常等。
然后你可以使用Sandcastle(+你可以在Codeplex上找到的一些GUI)来生成chm或html文档。
使用来自编译器的XML输出的是好的...但它是我的经验,这是难以表达的服务的完整的复杂性和它的预期不变,相关性等,在单独的意见。你最好维护一个单独的真实文档(Word,HTML,Wiki)来覆盖它。
我用两个XSL文件 - 一个记录的WSDL的操作,一个记录了XSD为正在传递数据。
遗憾的是,到目前为止,我还没有找到一个单一的解决方案凝聚力,所以我与改造WSDL和XSD分别为HTML文档2个XSLT文件。
WSDL Viewer完成WSDL的工作并生成第一个HTML文档,而xs3p对XSD文件中的数据包含也是如此。
我会把我的界面合同放到一个普通的dll中,并发布出来。它给他们提供了合同上的xml注释,而不用提供服务的细节,并允许他们在脱机模式下实施服务,直到他们准备使用它。最重要的是,他们可以绕过wsdl并使用ChannelFactory创建一个频道。
我们使用的是WCFExtras(http://www.codeplex.com/WCFExtras)。
除其他功能,它允许你的代码XML注释到生成WSDL直播出口,例如检查这些XML怎么样的评论:
/// <summary>
/// Retrieve the tickets information for the specified order
/// </summary>
/// <param name="orderId">Order ID</param>
/// <returns>Tickets data</returns>
[OperationContract]
TicketsDto GetTickets(int orderId);
得到反映在接口的WSDL:
<wsdl:operation name="GetTickets">
<wsdl:documentation>
<summary> Retrieve the tickets information for the specified order </summary> <param name="orderId">Order ID</param> <returns>Tickets data</returns>
</wsdl:documentation>
<wsdl:input wsaw:Action="xxxx" message="tns:PartnerAPI_GetTickets_InputMessage"/>
<wsdl:output wsaw:Action="xxxx" message="tns:PartnerAPI_GetTickets_OutputMessage"/>
</wsdl:operation>
摘自他们的文档:
从源代码XML添加WSDL文档评论 此扩展允许您可以直接从源文件中的XML注释中添加WSDL文档(annotaiton)。这些注释将作为WSDL的一部分发布,并且可用于知道如何利用它们的WSDL工具(例如Apache Axis wsdl2java等)。 2.0版还包括一个客户端WSDL导入器,它将这些WSDL注释转换为生成的代理代码中的XML注释。
- 1. 通过C++接口的最佳方式?
- 2. 处理WCF超时的最佳方式
- 3. 等待WCF服务的最佳方式?
- 4. 基于WCF接口序列化数组的最佳方式是什么?
- 5. 在Jackrabbit Repository中存档文档的最佳方式是什么?
- 6. 解析文本文档的最佳方式
- 7. 创建XML文档并保存到文件的最佳方式
- 8. actionscript的最佳文档格式?
- 9. 实现某种类型的ITaggable接口的最佳方式
- 10. 重用XML文档的部分的最佳方式?
- 11. 处理编程电子参考文档和文档的最佳方式
- 12. 接口支持iPhone 4,5,6,6+的最佳方式是什么?
- 13. Swig:处理简化接口的最佳方式
- 14. 接口C#和Java的最佳方式是什么?
- 15. 使用定制TTButton和接口生成器的最佳方式
- 16. 最佳方式文件
- 17. 自动转换Microsoft Office文档的最佳方式
- 18. 什么是存储软件文档的最佳方式?
- 19. 在Mongo中组织子文档的最佳方式是什么?
- 20. 什么是解析Microsoft Office和PDF文档的最佳方式?
- 21. 在pymongo中嵌入文档的最佳方式是什么?
- 22. 在C#中读写cXML文档的最佳方式是什么?
- 23. Spax EA将图表导出为Word文档的最佳方式
- 24. 什么是生成REST API文档的最佳方式?
- 25. 在控制台上浏览rubygems文档的最佳方式
- 26. 使用iCloud文档存储的最佳方式
- 27. 在mongoid中更新嵌入式文档的最佳方法
- 28. Boost的最佳文档:asio?
- 29. 最佳方式
- 30. 最佳方式
WCFExtras的实施是最好的选择。 – TylerY86 2015-06-22 17:56:18
[详细说明]它将XML文档直接与描述符关联。 使用XML文档是适当的,但Sandcastle或SHFB绝对适用于独立文档,它与WCFExtras一样只是第三方,但是特定情况较少。 – TylerY86 2015-06-22 18:04:21