WCF Completed 事件执行多次
来源:互联网 发布:淘宝汽车凹陷修复工具 编辑:程序博客网 时间:2024/05/01 03:12
请支持原文作者:http://www.cnblogs.com/RChen/archive/2008/07/19/1246680.html
在采用 Silverlight 调用 WCF 的开发过程中,今天遇到一个错误。
由于 Silverlight 中只支持异步方式的 WCF 调用,所以代码一般是这样子的:
var myServiceClient = new MyServiceClient();
myServiceClient.GetSomeDataCompleted += (sender, args) =>
{
HtmlPage.Window.Alert("completed.");
};
myServiceClient.GetSomeDataAsync();
myServiceClient.GetSomeDataCompleted += (sender, args) =>
{
HtmlPage.Window.Alert("completed.");
};
myServiceClient.GetSomeDataAsync();
这样写是没有问题的。
但是有的朋友可能为了提高代码共用程度,而把 myServiceClient 这个 WCF 的客户端代理对象作为类的字段来定义,以便在多次调用中共享。比如这篇教程中所说的:
“这一步比较复杂,这里分小点讨论。为了调用WCF服务,先定义一下全局变量。
”
这样做有什么问题呢?
假设我们上面的代码是在一个按钮的点击事件处理函数里定义的,那么,就会导致每点击一次按钮就注册一次 GetSomeDataCompleted 的事件处理函数。最后你会发现点一次按钮,会重复多次执行回调函数。
所以还是不要共用 client 代理了,每次调用之前创建一个比较好。
因为今天遇到了这个错误,在这里提醒一下大家。
- WCF Completed 事件执行多次
- jqueryclick事件,多次执行
- js 事件多次执行
- jquery click事件,多次执行
- jquery click事件,多次执行
- jquery元素事件执行多次
- 【JQuery-02】事件绑定多次造成多次执行
- javascript-阻止scroll事件多次执行
- click事件多次执行的解决办法
- jQuery click事件多次执行问题
- jquery click事件多次执行解决办法
- jquery 绑定点击事件 多次执行问题
- jquery click事件被多次执行?
- js中click事件被多次执行
- 如何避免点击事件被执行多次
- VB的WebBrowser防止多iframe执行多次DocumentComplete事件
- web开发避免resize事件多次执行(更新)
- 在IE浏览器中resize事件执行多次的解决方法
- 从开机加电到执行main函数之前的过程(一)
- 返回顶部功能
- UILabel添加发光效果
- 技术学习网站
- 学习使用SkyEye仿真
- WCF Completed 事件执行多次
- Linux下利用rpm包安装mysql
- 字符串:null与"" 的区别
- 鼠标移到GridView某一行时改变该行的背景色方法
- 主机网络ping通开发板与虚拟机问题
- 如何对字符串首部和尾部的空格进行过滤
- 从开机加电到执行main函数之前的过程(二)
- Unix I/O 性能测试
- 使用SpringMVC注解@RequestParam(value="XXX",required=false)时需要注意的问题