如果我有一個包含2個操作的服務契約,是否有可能擁有隻有其中一種操作的客戶端服務契約(.NET接口)?更一般地說,是否有可能僅在客戶端上使用服務操作的子集,甚至不必爲其他操作(及其相應的數據合同)生成代碼?WCF客戶端的服務操作子集
1
A
回答
1
正確的方法是創建一個新的OperationContract
,其中只包含您希望公開的方法,然後將該OperationContract
綁定到新端點並將該端點公開給您的客戶端。
1
是的,這絕對有可能。既然你提到生成的代碼,我猜你在Visual Studio中使用服務引用。如果是這樣,您可以簡單地編輯生成的接口和類,以省略您希望排除的操作。但是,每次更新客戶端項目中的服務引用時,都需要執行此編輯,因此可能不是您想要採用的方法,除非服務接口預期不會更改。
無論服務可能發生多少次更改,更優雅的方法都會涉及創建您自己的適配器,並使用它與您的所有服務客戶端代碼進行交互。
相關問題
- 1. WCF服務客戶端
- 2. WCF測試客戶端服務操作未更新
- 3. 將WCF服務公開給asmx客戶端和WCF客戶端
- 4. WCF的服務器/客戶端conected客戶服務器
- 5. 作爲客戶端和服務的WCF服務?
- 6. 作爲服務器和客戶端的WCF服務
- 7. C# - 客戶端的WCF REST服務JSON
- 8. 識別WCF服務中的客戶端
- 9. 用於Java客戶端的WCF服務
- 10. .Net WCF服務的Java客戶端
- 11. gSOAP客戶端的WCF服務
- 12. 操作在WCF測試客戶端
- 13. 取消客戶端中止WCF操作
- 14. WCF服務器/客戶端回調,從客戶端到服務器的回覆
- 15. WCF客戶端使用的WCF服務以及WCF客戶端使用的Java服務
- 16. 在WCF Web服務內部處理WCF Windows服務客戶端
- 17. WCF客戶端從ASMX web服務
- 18. Java客戶端訪問.net WCF服務
- 19. 客戶端異步調用WCF服務
- 20. 爲Android客戶端創建wcf服務
- 21. WCF回調服務到php客戶端
- 22. 3層客戶端WCF服務
- 23. WCF服務客戶端生命週期
- 24. WCF服務wsdl客戶端錯誤
- 25. WCF服務未假冒客戶端
- 26. WCF服務客戶端問題
- 27. WCF服務+客戶端(TLS1.2發行)
- 28. WCF - 向客戶端驗證服務
- 29. 重複使用WCF服務客戶端
- 30. WCF服務託管在客戶端
我有我自己的客戶端代碼生成器(類似於SvcUtil)。在生成服務引用時,我只需添加一個選項以排除服務合同的某些操作。非常感謝你做出如此快速的迴應。 – Nikola 2009-12-07 13:40:54