2016-03-04 99 views
0

我有一个使用Microsofts WCF的服务器 - 客户端遗留系统。在ServiceClient项目中,有一个对Service项目的服务引用。但ServiceClient对服务项目也有一个“正常”的引用。在我的opionen中,这破坏了完整的服务器 - 客户端体系结构,因为客户端引用了Service类,但是我的同事意味着它必须以这种方式完成。是否有任何理由让服务参考和参考到同一个项目?WCF服务参考和参考同一个项目

回答

1

你说得对,没有理由这样做。但我确定有添加此类参考的“原因”(很可能是由于解决方案构造不佳)。

客户端和服务器端真正需要的类应提取到单独的项目中(通常包含数据传输对象和服务接口)。服务类(实现服务接口)保留在特殊的服务器端项目中。客户不应该关心它的实现或依赖 - 它只是需要接口。

所以我建议重构你的服务项目来分割它。

+0

好的,谢谢你,正是我对他说的话。在这种情况下,原因是服务项目中有一些类应该放在单独的项目中,就像你说的那样。 – Pinzi

+1

这些常见和共享元素通常放入并称为[合同](https://msdn.microsoft.com/en-us/library/ff183866.aspx)。 – khlr