客戶端如何執(zhí)行WCF異步調(diào)用

這篇文章主要為大家展示了“客戶端如何執(zhí)行WCF異步調(diào)用”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“客戶端如何執(zhí)行WCF異步調(diào)用”這篇文章吧。

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于成都網(wǎng)站建設、成都網(wǎng)站設計、吳起網(wǎng)絡推廣、小程序設計、吳起網(wǎng)絡營銷、吳起企業(yè)策劃、吳起品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學生創(chuàng)業(yè)者提供吳起建站搭建服務,24小時服務熱線:028-86922220,官方網(wǎng)址:www.kartarina.com

客戶端究竟應該如何執(zhí)行WCF異步調(diào)用呢?如果采用編程方式獲得服務代理對象,這一問題會變得比較糟糕。因為我將服務契約的定義單獨形成了一個程序集,并在客戶端直接引用了它。然而,在這樣的服務契約程序集中,是沒有包含異步方法的定義的。因此,我需要修改在客戶端的服務定義,增加操作的異步方法。這無疑為服務契約的重用帶來障礙。至少,我們需要在客戶端維持一份具有異步方法的服務契約。

所幸,在客戶端決定采用異步方式調(diào)用我所設計的服務操作時,雖然需要修改客戶端的服務契約接口,但并不會影響服務端的契約定義。因此,服務端的契約定義可以保持不變,而在客戶端則修改接口定義如下:

[ServiceContract]  public interface IDocumentsExplorerService  {  [OperationContract]  Stream TransferDocument(Document document);   [OperationContract(AsyncPattern = true)]  IAsyncResult BeginTransferDocument(Document document,  AsyncCallback callback, object asyncState);   Stream EndTransferDocument(IAsyncResult result);  }

注意,在BeginTransferDocument()方法上,必須在OperationContractAttribute中將AsyncPattern屬性值設置為true,因為它的默認值為false。合理地利用服務的異步調(diào)用,可以有效地提高系統(tǒng)性能,合理分配任務的執(zhí)行。特別對于UI應用程序而言,可以提高UI的響應速度,改善用戶體驗。在我編寫的應用程序中,下載的文件如果很大,就有必要采用異步方式。WCF異步調(diào)用方式如下:

BasicHttpBinding binding = new BasicHttpBinding();  binding.SendTimeout = TimeSpan.FromMinutes(10);  binding.TransferMode = TransferMode.Streamed;  binding.MaxReceivedMessageSize = 9223372036854775807;  EndpointAddress address = new EndpointAddress  ("http://localhost:8008/DocumentExplorerService");  ChannelFactory factory =  new ChannelFactory(binding,address);  m_service = factory.CreateChannel();   ……  IAsyncResult result = m_service.BeginTransferDocument(doc,null,null);  result.AsyncWaitHandle.WaitOne();  Stream stream = m_service.EndTransferDocument(result);

以上是“客戶端如何執(zhí)行WCF異步調(diào)用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

名稱欄目:客戶端如何執(zhí)行WCF異步調(diào)用
鏈接URL:http://www.kartarina.com/article40/jchdeo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作網(wǎng)站收錄動態(tài)網(wǎng)站網(wǎng)站排名建站公司全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
主站蜘蛛池模板: 国产成年无码久久久免费| 国产AV无码专区亚洲AV毛网站 | 久久av高潮av无码av喷吹| 曰韩无码二三区中文字幕| 无码任你躁久久久久久老妇| 人妻少妇精品无码专区二区| 精品无码久久久久久久久久| 亚洲国产成人精品无码一区二区 | 久久亚洲AV成人出白浆无码国产| 久久美利坚合众国AV无码| 亚洲AV无码一区东京热久久| 亚洲精品无码久久久久AV麻豆| 在线看片福利无码网址| 人妻aⅴ无码一区二区三区| 亚洲熟妇无码AV在线播放| 精品一区二区三区无码免费直播| 日韩亚洲AV无码一区二区不卡| 中文字幕丰满伦子无码| 粉嫩大学生无套内射无码卡视频 | 中文字幕丰满乱孑伦无码专区| 亚洲av无码偷拍在线观看| 人禽无码视频在线观看| 午夜无码A级毛片免费视频| 中文字幕丰满乱子伦无码专区| 亚洲一本大道无码av天堂| 亚洲精品97久久中文字幕无码| 国产精品亚洲专区无码WEB| 丰满亚洲大尺度无码无码专线| 亚洲精品无码一区二区| 高清无码中文字幕在线观看视频| 99热门精品一区二区三区无码 | 亚洲AV无码资源在线观看| 亚洲人片在线观看天堂无码 | 一本无码中文字幕在线观| 中文字幕无码av激情不卡| 日韩人妻无码一区二区三区| 一本色道无码道在线| 日韩人妻无码一区二区三区| 国产精品无码A∨精品影院| 久久精品成人无码观看56| 精品无码一区二区三区亚洲桃色|