有没有理由将WCF接口保存在单独的文件中?

时间:2010-11-15 17:56:22

标签: wcf interface

我想,只是个人风格,但我讨厌为我的WCF服务提供2个文件。我倾向于将界面复制/粘贴到.cs文件中,这样我只需处理一个文件。

这样做会有什么危险吗?

2 个答案:

答案 0 :(得分:3)

本身并非危险 - 但有时候,如果需要在服务器之间共享那些服务,操作和数据合同(只是合同,接口,基本上),那么单独组装是非常有用的和客户方。

与客户端共享整个服务实现代码(实现服务接口的实际服务类)实在没有意义。

另外:如果您将接口放在单独的文件中(可能还有程序集),则可以更轻松地编写单元测试,尤其是在您想要模拟服务的情况下。如果将接口和类混合到一个文件中,会有点麻烦。

因此,我认为为接口和实现提供单独的文件是有用且有用的最佳实践(实际上:每个文件始终只有一个类),并将所有服务和数据契约(和错误契约)放入单独的程序集中

答案 1 :(得分:1)

实际上,我喜欢超越两个文件,并且有两个独立的项目。一个项目包含接口定义。主要价值是集成测试。我喜欢用WCF客户端制作第三个项目。该客户端访问“共享”程序集中的接口。

记住mantra of Testivus:“编写(生产)代码时,请考虑测试;编写测试时,请考虑代码。”