﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-Victor.Stone-随笔分类-.net Remoting</title><link>http://www.cnitblog.com/sca/category/8812.html</link><description>dot net 备忘录</description><language>zh-cn</language><lastBuildDate>Mon, 26 Sep 2011 05:40:44 GMT</lastBuildDate><pubDate>Mon, 26 Sep 2011 05:40:44 GMT</pubDate><ttl>60</ttl><item><title>Remoting异步回调</title><link>http://www.cnitblog.com/sca/archive/2010/12/20/72425.html</link><dc:creator>Victor.Stone</dc:creator><author>Victor.Stone</author><pubDate>Mon, 20 Dec 2010 14:19:00 GMT</pubDate><guid>http://www.cnitblog.com/sca/archive/2010/12/20/72425.html</guid><wfw:comment>http://www.cnitblog.com/sca/comments/72425.html</wfw:comment><comments>http://www.cnitblog.com/sca/archive/2010/12/20/72425.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/sca/comments/commentRss/72425.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/sca/services/trackbacks/72425.html</trackback:ping><description><![CDATA[下面是今天做的一个小试验代码：<br><br>
<div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;FrmMain_Load(</span><span style="COLOR: #0000ff">object</span><span style="COLOR: #000000">&nbsp;sender,&nbsp;EventArgs&nbsp;e)<br><img id=Codehighlighter1_70_854_Open_Image onclick="this.style.display='none'; Codehighlighter1_70_854_Open_Text.style.display='none'; Codehighlighter1_70_854_Closed_Image.style.display='inline'; Codehighlighter1_70_854_Closed_Text.style.display='inline';" align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_70_854_Closed_Image onclick="this.style.display='none'; Codehighlighter1_70_854_Closed_Text.style.display='none'; Codehighlighter1_70_854_Open_Image.style.display='inline'; Codehighlighter1_70_854_Open_Text.style.display='inline';" align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ContractedBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_70_854_Closed_Text><img src="http://www.cnitblog.com/Images/dot.gif"></span><span id=Codehighlighter1_70_854_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.pictureBox1.Visible&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BinaryServerFormatterSinkProvider&nbsp;serverProvider&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;BinaryServerFormatterSinkProvider();<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BinaryClientFormatterSinkProvider&nbsp;clientProvider&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;BinaryClientFormatterSinkProvider();<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;serverProvider.TypeFilterLevel&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;TypeFilterLevel.Full;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IDictionary&nbsp;props&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;Hashtable();<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">props["bindTo"]&nbsp;=&nbsp;"121.12.157.244";</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">"113.105.185.151";&nbsp;</span><span style="COLOR: #008000"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;props[</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">port</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">]&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HttpChannel&nbsp;channel&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;HttpChannel(props,&nbsp;clientProvider,&nbsp;serverProvider);<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ChannelServices.RegisterChannel(channel,&nbsp;</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">);<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.user&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;(IUser)Activator.GetObject(<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">typeof</span><span style="COLOR: #000000">(IUser),<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">http://localhost:9090/User.soap</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">);&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">delegate</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">&nbsp;MyDelegate(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000">&nbsp;a);<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">&nbsp;MyDelegate&nbsp;md;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;CallBack1(IAsyncResult&nbsp;Iar)<br><img id=Codehighlighter1_1004_1172_Open_Image onclick="this.style.display='none'; Codehighlighter1_1004_1172_Open_Text.style.display='none'; Codehighlighter1_1004_1172_Closed_Image.style.display='inline'; Codehighlighter1_1004_1172_Closed_Text.style.display='inline';" align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_1004_1172_Closed_Image onclick="this.style.display='none'; Codehighlighter1_1004_1172_Closed_Text.style.display='none'; Codehighlighter1_1004_1172_Open_Image.style.display='inline'; Codehighlighter1_1004_1172_Open_Text.style.display='inline';" align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ContractedBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_1004_1172_Closed_Text><img src="http://www.cnitblog.com/Images/dot.gif"></span><span id=Codehighlighter1_1004_1172_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(Iar.IsCompleted)<br><img id=Codehighlighter1_1051_1162_Open_Image onclick="this.style.display='none'; Codehighlighter1_1051_1162_Open_Text.style.display='none'; Codehighlighter1_1051_1162_Closed_Image.style.display='inline'; Codehighlighter1_1051_1162_Closed_Text.style.display='inline';" align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_1051_1162_Closed_Image onclick="this.style.display='none'; Codehighlighter1_1051_1162_Closed_Text.style.display='none'; Codehighlighter1_1051_1162_Open_Image.style.display='inline'; Codehighlighter1_1051_1162_Open_Text.style.display='inline';" align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ContractedSubBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_1051_1162_Closed_Text><img src="http://www.cnitblog.com/Images/dot.gif"></span><span id=Codehighlighter1_1051_1162_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.Text&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;md.EndInvoke(Iar);<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.pictureBox1.Visible&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">private</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000">&nbsp;button1_Click(</span><span style="COLOR: #0000ff">object</span><span style="COLOR: #000000">&nbsp;sender,&nbsp;EventArgs&nbsp;e)<br><img id=Codehighlighter1_1246_1517_Open_Image onclick="this.style.display='none'; Codehighlighter1_1246_1517_Open_Text.style.display='none'; Codehighlighter1_1246_1517_Closed_Image.style.display='inline'; Codehighlighter1_1246_1517_Closed_Text.style.display='inline';" align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_1246_1517_Closed_Image onclick="this.style.display='none'; Codehighlighter1_1246_1517_Closed_Text.style.display='none'; Codehighlighter1_1246_1517_Open_Image.style.display='inline'; Codehighlighter1_1246_1517_Open_Text.style.display='inline';" align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ContractedBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_1246_1517_Closed_Text><img src="http://www.cnitblog.com/Images/dot.gif"></span><span id=Codehighlighter1_1246_1517_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.Text&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">""</span><span style="COLOR: #000000">;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;md&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;MyDelegate(</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.user.GetValue);<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AsyncCallback&nbsp;ac&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000">&nbsp;AsyncCallback(CallBack1);<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IAsyncResult&nbsp;Iar&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;md.BeginInvoke(</span><span style="COLOR: #000000">345</span><span style="COLOR: #000000">,&nbsp;ac,&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">);<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/InBlock.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">this</span><span style="COLOR: #000000">.pictureBox1.Visible&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">true</span><span style="COLOR: #000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span></div><img src ="http://www.cnitblog.com/sca/aggbug/72425.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/sca/" target="_blank">Victor.Stone</a> 2010-12-20 22:19 <a href="http://www.cnitblog.com/sca/archive/2010/12/20/72425.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>服务端订阅客户端事件处理</title><link>http://www.cnitblog.com/sca/archive/2010/12/16/72316.html</link><dc:creator>Victor.Stone</dc:creator><author>Victor.Stone</author><pubDate>Thu, 16 Dec 2010 01:05:00 GMT</pubDate><guid>http://www.cnitblog.com/sca/archive/2010/12/16/72316.html</guid><wfw:comment>http://www.cnitblog.com/sca/comments/72316.html</wfw:comment><comments>http://www.cnitblog.com/sca/archive/2010/12/16/72316.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/sca/comments/commentRss/72316.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/sca/services/trackbacks/72316.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 服务端订阅客户端事件处理：（不能穿过防火墙，代理）BI:using&nbsp;System;using&nbsp;System.Collections.Generic;using&nbsp;System.Linq;using&nbsp;System.Text;namespace&nbsp;BI{&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;interface&nbsp...&nbsp;&nbsp;<a href='http://www.cnitblog.com/sca/archive/2010/12/16/72316.html'>阅读全文</a><img src ="http://www.cnitblog.com/sca/aggbug/72316.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/sca/" target="_blank">Victor.Stone</a> 2010-12-16 09:05 <a href="http://www.cnitblog.com/sca/archive/2010/12/16/72316.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>