silverlight 调用webservice 事件执行多次 怎么就执行一次

快乐大法师 2011-10-31 01:32:18


userService.AddUserInformationCompleted += new EventHandler<UserServiceReference2.AddUserInformationCompletedEventArgs>(userService_AddUserInformationCompleted);
userService.AddUserInformationAsync(user);


void userService_AddUserInformationCompleted(object sender, UserServiceReference2.AddUserInformationCompletedEventArgs e)
{
int result = e.Result;
if (result!=0)
{
objNewAddInformation.USER_ID = result;
list.Add(objNewAddInformation);
this.dataGrid1.ItemsSource = null;
this.dataGrid1.ItemsSource = list;
}
}



silverlight 调用webservice
多次调用 userService_AddUserInformationCompleted事件执行多次
比如第一次 调用 userService_AddUserInformationCompleted执行一次
第二次 调用 userService_AddUserInformationCompleted执行两次

怎么回事啊
...全文
155 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Architecture Net 2011-10-31
  • 打赏
  • 举报
回复
//这句是注册事件。
userService.AddUserInformationCompleted += new EventHandler<UserServiceReference2.AddUserInformationCompletedEventArgs>(userService_AddUserInformationCompleted);

//这句是调用第一次异步请求。
userService.AddUserInformationAsync(user);
//这里是调用第二次异步请求
userService.AddUserInformationAsync(user);


//这句是注销事件。
userService.AddUserInformationCompleted -= new EventHandler<UserServiceReference2.AddUserInformationCompletedEventArgs>(userService_AddUserInformationCompleted);
在注册好之后,请不要再注册,这个使用异步请求多次即可实现你的要求,用完之后,请注销事件。

assky124 2011-10-31
  • 打赏
  • 举报
回复
你只注册事件,不注销,

当然越调用越多

userService.AddUserInformationCompleted -= new EventHandler<UserServiceReference2.AddUserInformationCompletedEventArgs>(userService_AddUserInformationCompleted);

userService.AddUserInformationCompleted += new EventHandler<UserServiceReference2.AddUserInformationCompletedEventArgs>(userService_AddUserInformationCompleted);

8,735

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧