成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

WCF信道監(jiān)聽器代碼示例解析

開發(fā) 開發(fā)工具
WCF信道監(jiān)聽器的創(chuàng)建,可以用于在某種特定模式下進行請求的監(jiān)聽。那么接下來我們將會通過一段代碼示例來為大家詳細講解相關內(nèi)容。

WCF是一個功能比較強大的開發(fā)工具,可以幫助我們創(chuàng)建一個功能穩(wěn)定,安全性高的解決方案。在這里,我們創(chuàng)建一個自定義的信道監(jiān)聽器:SimpleReplyChannelListner。#t#

該WCF信道監(jiān)聽器用于在請求-回復消息交換模式下進行請求的監(jiān)聽。在本案例中,我們來創(chuàng)建與之相對的信道工廠:SimpleChannelFactory< TChannel>,用于請求-回復消息交換模式下進行用于請求發(fā)送信道的創(chuàng)建。由于SimpleChannelFactory< TChannel>的實現(xiàn)相對簡單,將所有代碼一并附上。

SimpleChannelFactory< TChannel>直接繼承自抽象基類SimpleChannelFactoryBase< TChannel>。字段成員_innerChannelFactory表示信道工廠棧中后一個信道工廠對象,該成員在構造函數(shù)中通過傳入的BindingContext對象的BuildInnerChannelFactory< TChannel>方法創(chuàng)建。OnCreateChannel是核心大方法,實現(xiàn)了真正的信道創(chuàng)建過程,在這里我們創(chuàng)建了我們自定義的信道:SimpleRequestChannel.。構建SimpleRequestChannel. 的InnerChannel通過­­­_innerChannelFactory的CreateChannel方法創(chuàng)建。對于其他的方法(OnOpen、OnBeginOpen和OnEndOpen),我們僅僅通過PrintHelper輸出當前的方法名稱,并調(diào)用­_innerChannelFactory相應的方法。

WCF信道監(jiān)聽器代碼示例:

 

  1. public class SimpleChannelFactory< TChannel> : 
    ChannelFactoryBase
    < TChannel> 
  2. {  
  3. public IChannelFactory< TChannel> _innerChannelFactory;  
  4. public SimpleChannelFactory(BindingContext context)  
  5. {  
  6. PrintHelper.Print(this, "SimpleChannelFactory");  
  7. this._innerChannelFactory = context.BuildInnerChannelFactory
    < TChannel>();  
  8. }   
  9. protected override TChannel OnCreateChannel
    (EndpointAddress address, Uri via)  
  10. {  
  11. PrintHelper.Print(this, "OnCreateChannel");  
  12. IRequestChannel innerChannel = this._innerChannelFactory.
    CreateChannel(address, via) as IRequestChannel;  
  13. SimpleRequestChannel. channel = new SimpleRequestChannel.
    (this, innerChannel);  
  14. return (TChannel)(object)channel;  
  15. }  
  16. protected override IAsyncResult OnBeginOpen
    (TimeSpan timeout, AsyncCallback callback, object state)  
  17. {  
  18. PrintHelper.Print(this, "OnBeginOpen");  
  19. return this._innerChannelFactory.BeginOpen(timeout, callback, state);  
  20. }   
  21. protected override void OnEndOpen(IAsyncResult result  
  22. {  
  23. PrintHelper.Print(this, "OnEndOpen");  
  24. this._innerChannelFactory.EndOpen(result);  
  25. }  
  26. protected override void OnOpen(TimeSpan timeout)  
  27. {  
  28. PrintHelper.Print(this, "OnOpen");  
  29. this._innerChannelFactory.Open(timeout);  
  30. }  

以上就是對WCF信道監(jiān)聽器的相關介紹。

責任編輯:曹凱 來源: 博客園
相關推薦

2009-11-09 10:03:09

WCF通道監(jiān)聽器

2010-02-24 13:38:18

WCF PreCal模

2010-02-22 15:00:02

WCF信道工廠

2011-03-21 16:21:49

Oracle監(jiān)聽口令監(jiān)聽器

2009-07-08 17:39:23

Servlet監(jiān)聽器

2009-09-27 17:46:22

Hibernate監(jiān)聽

2011-05-16 10:14:11

Hibernate

2010-03-02 14:41:00

WCF行為控制

2010-01-13 09:49:09

注釋監(jiān)聽器Listener

2011-06-01 14:55:24

Android Service 監(jiān)聽器

2010-04-23 18:00:31

2009-07-06 13:48:53

Servlet監(jiān)聽器

2009-01-03 13:37:26

Oracle監(jiān)聽器Oracle服務器Oracle網(wǎng)絡配置

2023-01-06 08:55:00

2009-11-18 18:28:27

Oracle監(jiān)聽器

2012-02-03 13:27:16

2010-08-09 11:06:01

Flex事件機制

2010-04-19 15:38:10

2010-04-23 10:13:18

Oracle監(jiān)聽

2020-04-20 11:09:49

過濾器監(jiān)聽器 Web
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 五月天国产 | 99久久久无码国产精品 | 久久亚洲精品国产精品紫薇 | 久久99精品久久久 | 伊人伊人网 | 成人免费黄视频 | 91精品久久久久久久久中文字幕 | 久久成人免费观看 | 国产高清在线精品一区二区三区 | 自拍视频网站 | 日韩一区二区三区av | 毛片免费看| 日韩久草 | 亚洲成人一区 | 色毛片 | 亚洲国产成人av好男人在线观看 | 久青草影院 | 天堂av免费观看 | 亚洲高清久久 | 亚洲男人天堂av | 精品欧美乱码久久久久久1区2区 | 国产精品日日做人人爱 | 亚洲欧美视频在线观看 | 国产999精品久久久久久 | 日韩一区在线播放 | 国产免费a| 日韩一区二区免费视频 | 91av在线免费看| 欧美xxxx网站 | 精品国产18久久久久久二百 | 欧美久久久久久久 | 亚洲男女激情 | 国产欧美一级二级三级在线视频 | 欧美日韩视频在线 | 日韩欧美一二三区 | 国产精品日本一区二区不卡视频 | 成人欧美一区二区三区黑人孕妇 | 91av免费版 | 精品免费视频 | 欧洲色综合 | 国产成人99久久亚洲综合精品 |