这个问题更多的是探索人们在实际情况下在社区中所做的事情,而不是一个有针对性的问题。我对此进行了相当广泛的搜索,虽然我发现很多博客都提倡契约优先服务设计和一些支持它们的评论,但我还没有找到很多关于使用 WCF 实现契约优先的实用信息,优缺点我最近对 SOA 进行了一些广泛的研究,主要是通过 Thomas Erl 的书籍,他提倡的主要概念之一是契约优先设计。
我的问题如下:
- 您如何使用 .NET 和 WCF 进行合同优先服务设计?
- 除了 svcutil 之外,还有其他工具可以从合同中生成客户端和服务吗?(任何与 VS 集成的东西都是理想的)
- 您在合同优先设计和 wCF 方面遇到过哪些现实世界的专业人士?
- 您在使用契约优先设计和 WCF 时遇到了哪些现实世界的弊端?
合约优先开发的主要问题之一似乎是工具。Svcutil 是我发现的唯一可以从合约生成服务代码的东西,而且它的输出很差。它的单一文件,塞满了属性和代码生成工件,基本上需要在合约更新时重新生成和替换。我更喜欢更好的方法,最好是不需要regen-replace的方法。我什至可以手动创建服务端合同,假设它在现实世界的场景中是实用的。
编辑:
虽然 WCSF 解决了我的迫切需求,但学习Protocol Buffers和Service Factory都是有趣的工具,我相信它们将来会对我有所帮助。