2013-05-08 103 views
0

正在執行客戶端服務器應用程序。服務器部分使用WCF服務實現。 WCF服務通過服務契約公開數據類型。客戶端模塊化並使用MEF進行DI。在客戶端中,我有一個引用WCF服務的基礎結構模塊。基礎結構模塊知道WCF數據類型。我的問題是,是否有可能讓引用基礎結構的其他模塊知道這些數據類型,而不在每個模塊中添加對WCF服務的引用。有沒有什麼公開的WCF數據類型的方法將WCF數據類型暴露給外部模塊

回答

0

通常,你有一個合同的DLL。這個契約DLL包含服務接口和所有相關類。然後,您的WCF服務和任何客戶端組件將引用此合約程序集。由於合約程序集只包含接口和POCO(普通的舊CLR對象,只有數據,而不是方法或邏輯),它幾乎可以在任何地方被引用,而不會泄露任何關於基礎結構的信息。

+0

感謝您的回答,嘗試過它,但我在實體框架中投入巨大,它似乎不允許映射接口。好吧,也許它回到傳遞的通用數據集,再次 – klashagelqvist 2013-05-08 13:08:10

0

nvoights answere在這裏可能是正確的,但它也值得一提的是,如果你控制服務器和客戶端,那麼你可以如果你想把共同的對象放在一個dll所消耗的dll中,並忽略WCF生成類型。在一些能夠比管理服務器類型和WCF生成的等效類型更好的方案中更好。