使用SvcUtil爲SOAP WebService生成的代理。這個網絡服務有許多複雜的類型,每年都會改變。有沒有我可以用來爲所有類生成包裝的工具。在包裝類中使用組合我將調用代理類。用於爲代理類生成包裝的.NET工具
回答
Svcutil.exe根據WSDL的XSD部分在客戶端生成POCO類型。不應該涉及T4Template,這太複雜,過度和不適當。 Svcutil.exe可能已經創建了您需要的所有代理類。
如果複雜類型可能每年都在變化,那麼您可以考慮版本控制。
一旦接口發佈,你不應該改變它。這適用於運營合同和數據合同。
你可以參考這篇文章WCF for the Real World和谷歌WCF版本控制。
因此,基本上你可以在合約中明確聲明XML目標名稱空間,並用XML名稱空間映射CLR名稱空間。當您需要更改複雜類型時,您必須提供另一個版本的WCF服務。在所有客戶端升級到最新版本之前的過渡期內,您保持兩個版本都在運行。
如前所述,我無法控制服務。我是客戶,希望確保在每年的服務或複雜類型發生變化時,我無需對應用程序進行太多更改。 – user2596613
除非服務提供者拒絕通過url或可下載的文件發佈WSDL文件,否則您將使用svcutil.exe來針對wsdl文件生成代理類。當然,你無法控制服務,也不應該關心服務是以.NET,Java還是PHP實現的。此服務有一些中斷的更改(希望通過版本控制),您只需要再次針對新發布的WSDL運行svcutil.exe。 – ZZZ
- 1. 是否有一個實用工具從非COM .NET DLL生成Com類包裝?
- 2. 包裝類的代碼生成器
- 3. 對象包裝的代碼生成工具
- 4. 。從XSD與工會代NET類生成
- 5. 什麼自動代碼生成工具可用於Castle ActiveRecord類?
- 6. 用於打包.NET項目的工具
- 7. 從具體類生成攔截代理?
- 8. 用於爲Entity Framework 4創建UOW和Repository類的代碼生成器工具?
- 9. WSDL.exe工具 - 爲.NET Compact Framework生成代碼
- 10. 用於.NET的PDF生成工具(比較和體驗)
- 11. 用於.NET的自然語言處理工具包
- 12. 生成類圖的工具?
- 13. 生成的WSDL代理具有名爲「System」的類
- 14. 使用XSD中的自動生成的代理類(.Net C#4.0)
- 15. Sharepoint代碼生成工具
- 16. .NET包裝類
- 17. WSDL生成的代理類
- 18. Hibernate工具生成類aproach
- 19. 工具來生成類圖
- 20. 是否存在任何用於爲.Net配置生成強類型類的工具?
- 21. 如何安裝visual studio添加爲U2工具包爲.NET v1.3.0
- 22. 任何用於從AST生成JavaScript代碼的工具
- 23. 用於GNU/Linux的代碼生成工具UML
- 24. 用於生成C代碼的工具/ IDE /語言存在
- 25. 需要用於實體DAO的代碼生成工具
- 26. 用於PHP的代碼生成工具/框架
- 27. 用於從Android代碼生成可視化圖表的工具
- 28. 用於生成asp.net代碼的開源工具
- 29. 爲WCF生成類庫代理
- 30. 在Scala中自動生成隱式包裝的工具
您可以嘗試T4Template。編寫您可以在您生成的代理類上運行的自定義TT以創建包裝類。但是AFAIK不存在這樣的工具,因爲通過代理創建包裝是一個定製的需求。 – vendettamit
那麼,開發人員如何處理對代理的更改?這可能會導致應用程序在很多地方進行更改。 – user2596613
爲了避免某種程度的變化影響,我個人更喜歡使用動態代理調用。意味着你並不需要使用svcutil來生成代理。所有合同都在客戶端和服務器之間共享。所以應用程序只需要端點信息休息通道工廠就可以完成調用的需要。這部分你必須自己做。 – vendettamit