silverlight 4学习体会

最近做一个东西,用到了silverlight4和wcf,写代码的过程不是想象中的那么顺利,有些问题调试了老半天,可能是经验不足的问题,现将本人遇到的问题列出。完全是本人之谈,不代表权威和完全正确,希望和大家探讨!

1、出现通信超时的问题

   这里看来很多别人的文章,大多数说可以通过修改配置文件里面的sendtimeout 还有什么连接数的问题可以解决,本人试过后发现还是不行,后来调试还是代码写的有问题,可能的原因主要有:    

   (1)从数据库中读取的数据与实体类映射不一致比如数据库中一个字段的类型是tinyint而实体类中定义却为int,silverlight给出的错误提示不是很明显,在调试的时候可能出现阻塞导致超时;

   (2  调用WCF取数据的时候连续调用两次异步WCF函数,发现也会出现问题,我想是不是一个WCF返回的数据,与第二个返回的数据在半路中冲突导致阻塞了?就像在一条路上两辆车相撞了。后来当把第二个WCF的调用移到第一个WCF异步调用完成后的函数里面去执行,问题就解决了。

 

  (3)silverlight中调用WCF经常是要添加委托,委托连续加多了也会出问题,比如说有一个查询按钮,每次点击的时候都会去调用WCF服务读数据,这样每次都要添加调用委托,当你连续点击多次的时候,同一个委托就被反复加了多次,这样就会出现委托混乱的问题,后来通过一个try catch解决了这个问题,就是每次调用+=委托的时候先在try函数里面减去即-=委托,这样就避免了委托混乱的问题。

 

posted @ 2010-12-22 14:08  郭远威  阅读(418)  评论(0编辑  收藏  举报