我有一个复选框列表,每当用户选择一个项目时,我的ViewModel将要求我的服务发送与该选项相关的数据。如何在Silverlight中处理异步数据接收?
_myService.GetAssetSpotDataCompleted += GetAssetSpotDataCompleted;
_myService.GetAssetSpotDataAsync(descItem);
每个选定的项目将调用相同的服务方法和调试服务它发回正确的数据。
我的问题出现时,用户检查一些项目,而我的ViewModel中仍然没有收到数据。例如:用户选择项目1和项目2,但我的viewModel仍然没有来自服务的回答。
当我的ViewModel收到信息出现问题时,我总是会在e.Result中收到两次相同的数据。
这意味着,它进入到方法GetAssetSpotDataAsync
两次,但始终具有相同的结果,而不是结果,该项目1,然后2
我已经调试的一切项目,我都集中在这个问题这些前两行的方法GetAssetSpotDataCompleted
的:
((MyServiceClient)sender).GetAssetSpotDataCompleted -= GetAssetSpotDataCompleted;
if (e.Result != null)
任何人都可以帮助我?
每次用户选择某个项目时,是否需要添加/删除事件处理程序?只有一个声明就足够了 – mslliviu 2012-02-14 12:46:13