新聞速報

        

2020年10月26日 星期一

ServiceContractGenerator vs ServiceDescriptionImporter

 

最近,我與WCF合作。在此期間,我開發了一種工具,可以幫助我們僅通過使用URL來運行任何Web服務(.asmx)和wcf服務(.svc)。這是完全動態的過程。在此過程中,我學習瞭如何獲取方法列表,參數名稱以及如何動態調用方法。在此過程中,我遇到了稱為ServiceDescriptionImporter和ServiceContractGenerator的術語。因此,我覺得我應該與讀者分享這些術語的含義以及它們之間的區別。所以在這裡...

ServiceDescriptionImporter:

通過ServiceDescriptionImporter類,您可以輕鬆地將WSDL描述中包含的信息導入到System.CodeDom.CodeCompileUnit對像中。

通過調整Style參數的值,您可以指示ServiceDescriptionImporter實例通過透明調用生成提供Web服務功能的客戶端代理類,或生成封裝Web服務功能而不實現的抽像類。它。

然後,可以直接調用生成的CodeCompileUnit對像中的代碼,也可以使用您選擇的語言將其導出。

ServiceContractGenerator:

System.ServiceModel.Description.ServiceContractGenerator類型從System.ServiceModel.Description.ServiceEndpoint描述對像生成服務合同代碼和綁定配置。

ServiceContractGenerator vs ServiceDescription進口商:

–> ServiceDescriptionImporter是VS中的「添加Web參考」對話框和SDK中的「 wsdl.exe」工具所使用的類,以生成「 asmx」樣式的客戶端Web服務代理。

ServiceContractGenerator與WCF等效,用於VS中的「添加服務引用」對話框和SDK中的「 svcutil.exe」工具。

–> ServiceDescriptionImporter使用asmx客戶端基礎結構(System.Web.Services.Protocols.SoapHttpClientProtocol和朋友)。

ServiceContractGenerator使用WCF客戶端基礎結構(System.ServiceModel.ClientBase和朋友)。

希望這會有所幫助!

沒有留言:

張貼留言