这个问题更多是探究社区中人们在实践中都在做什么,而不是一个具体针对性的问题。我已经广泛搜索了这方面的信息,虽然找到了很多博客支持先约定后编写服务设计的观点和一些相关评论,但我还没有找到关于如何在 WCF 实现先约定后编写、在现实环境中这样做的优缺点等方面的实用信息。
我的问题如下:
- 你如何使用.NET和WCF实现先约定后编写的服务设计?
- 除了svcutil之外,是否还有其他工具可以从契约生成客户端和服务端代码?(任何与VS集成的工具都是理想的)
- 你在先约定后编写和WCF的实际应用中遇到了哪些优点?
- 你在先约定后编写和WCF的实际应用中遇到了哪些缺点?
先约定后编写开发的一个主要问题似乎是工具。Svcutil是我找到的唯一能从契约生成服务代码的工具,它的输出质量相当差。它是单文件的,充斥着属性和代码生成的副产品,而且基本上需要在每次更新契约时重新生成和替换。我希望有更好的方法,最好是不需要重新生成和替换的方法。即使在实际情况下需要手动创建服务端契约,我也没问题。
编辑:
虽然 WCSF 解决了我的直接需求,但了解 Protocol Buffers 和Service Factory 这两个工具都是很有趣的,我相信它们在未来会对我有所帮助。