2016-03-04 148 views
0

我有一個使用Microsofts WCF的服務器 - 客戶端遺留系統。在ServiceClient項目中,有一個對Service項目的服務引用。但ServiceClient對服務項目也有一個「正常」的引用。在我的opionen中,這破壞了完整的服務器 - 客戶端體系結構,因爲客戶端引用了Service類,但是我的同事意味着它必須以這種方式完成。是否有任何理由讓服務參考和參考到同一個項目?WCF服務參考和參考同一個項目

回答

1

你說得對,沒有理由這樣做。但我確定有添加此類參考的「原因」(很可能是由於解決方案構造不佳)。

客戶端和服務器端真正需要的類應提取到單獨的項目中(通常包含數據傳輸對象和服務接口)。服務類(實現服務接口)保留在特殊的服務器端項目中。客戶不應該關心它的實現或依賴 - 它只是需要接口。

所以我建議重構你的服務項目來分割它。

+0

好的,謝謝你,正是我對他說的話。在這種情況下,原因是服務項目中有一些類應該放在單獨的項目中,就像你說的那樣。 – Pinzi

+1

這些常見和共享元素通常放入並稱爲[合同](https://msdn.microsoft.com/en-us/library/ff183866.aspx)。 – khlr