Silverlight客户端异步同步操作

      异步操作,能带来更加的客户体验,但对开发人员来说也增加烦恼。目前项目中采用webservice生成的异步操作主要存在以下问题

  • 对于采用异步方式取数,在客户端代码中,最好不能出现逻辑判断。
  • 需要按顺序加载的方法,导致代码可读性下降。

     针对以上问题,在现有的开发经验,我有一下两种方案:

  • 对于客户端取数方法,相互没有任何关系。我采用客户端计数的方式,即:定义一个全局变量,在异步方法的Completed将该变量加1并做判断是否已经和预计开发的次数是否相等,若相等则所有数据加载完成。
  • 对于必须有一定顺序的取数方式,要增加代码可读性。我讲每一个取数方式单独编写成一个一个方法,传入一个Action的委托。这样在开发只需确定一个入口,逻辑都交给每个方法的Completed处理。

 

posted @ 2013-06-08 10:39  _herbert  阅读(207)  评论(0编辑  收藏  举报