91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

WCF契約查詢ConsoleApplication應用實例分析

發布時間:2021-12-15 09:15:50 來源:億速云 閱讀:107 作者:iii 欄目:編程語言

這篇文章主要介紹“WCF契約查詢ConsoleApplication應用實例分析”,在日常操作中,相信很多人在WCF契約查詢ConsoleApplication應用實例分析問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”WCF契約查詢ConsoleApplication應用實例分析”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

當我們拿到一個服務地址的時候該如何知道這個服務所提供的服務呢?如果是您自己開發的Service,這一點或許不需要興師動眾,但是如果是別人開發的服務,那么了解服務中的Endpoint將顯得格外重要,本文將利用對[WCF]繼承中所構建的服務代碼進行分析。

熟悉Web Service開發的程序員對添加服務引用應該并不陌生。在創建某個服務的客戶端程序時,并不需要從頭開始編寫客戶端的底層通信和交互代碼,可以通過輸入服務地址來添加服務來讓Visual Studio生成客戶端代理,這樣訪問服務就像訪問本地組件一樣,而不需要去關心通信的細節。如果創建的客戶端程序項目和服務程序項目處在同一個解決方案里(很多開發者在開發服務時,也會同步開發客戶端程序),還可以通過Visual Studio來幫助我們“發現(Discovery)”服務,并添加服務引用。

打開其程序代碼添加一個WCF契約查詢ConsoleApplication應用程序,新建程序,WCF契約查詢代碼如下:

  1. using System;   

  2. using System.ServiceModel.Description;   

  3. namespace ContractQueriesClient   

  4. {   

  5. class Program   

  6. {   

  7. static void Main(string[] args)   

  8. {   

  9. // ?WSDL   

  10. //string mexAddress = "http://localhost:8080/ScientificCalculatorService?WSDL";   

  11. //MetadataExchangeClient MEXClient = new MetadataExchangeClient(new Uri(mexAddress), MetadataExchangeClientMode.HttpGet);   

  12. // /MEX string mexAddress = "http://localhost:8080/ScientificCalculatorService/mex";   

  13. MetadataExchangeClient MEXClient = new MetadataExchangeClient(new Uri(mexAddress), MetadataExchangeClientMode.MetadataExchange);   

  14. MetadataSet metadata = MEXClient.GetMetadata();   

  15. MetadataImporter importer = new WsdlImporter(metadata);   

  16. ServiceEndpointCollection endpoints = importer.ImportAllEndpoints();   

  17. int endpointCounter = 0;   

  18. foreach (ServiceEndpoint endpoint in endpoints)   

  19. { Console.WriteLine("endpoints[{0}].Name = {1}", endpointCounter, endpoint.Name);   

  20. Console.WriteLine("endpoints[{0}].Contract.Namespace = {1}", endpointCounter, endpoint.Contract.Namespace);   

  21. Console.WriteLine("endpoints[{0}].Contract.Name = {1}", endpointCounter, endpoint.Contract.Name); endpointCounter++; } 
    System.Collections.ObjectModel.Collection<ContractDescription> contracts = importer.ImportAllContracts();   

  22. int contractCounter = 0; foreach (ContractDescription contract in contracts)   

  23. { Console.WriteLine("contracts[{0}].Namespace = {1}", contractCounter, contract.Namespace);   

  24. Console.WriteLine("contracts[{0}].Name = {1}", contractCounter, contract.Name); contractCounter++; } } } } 

這個項目我們不需要Add ServiceReference,因為我們只需分析那個“地址”所提供給我們的究竟是什么樣的服務,而不是要去使用服務中的WCF契約查詢

到此,關于“WCF契約查詢ConsoleApplication應用實例分析”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

wcf
AI

祁东县| 永善县| 松江区| 肥东县| 临安市| 泰来县| 天峻县| 福泉市| 台州市| 准格尔旗| 额济纳旗| 彩票| 郑州市| 团风县| 黄骅市| 丰顺县| 社会| 鱼台县| 崇礼县| 兰溪市| 北碚区| 简阳市| 柳林县| 昌图县| 庆元县| 武义县| 忻州市| 法库县| 浠水县| 乾安县| 山丹县| 古浪县| 洪雅县| 古丈县| 阜新市| 台北县| 年辖:市辖区| 安阳市| 邢台市| 柘城县| 左贡县|