您的位置:首页 > 产品设计 > 产品经理

Error hard to found during my WCF/WPF Development

2011-03-01 15:56 274 查看
1. WCF序列化的错误

分析:这种错误要么是在request要么是在reply的转化中出错。

对策:需要如下设置才能看到:

1) 需要enable所有exception

2) 或者使用service view tool。 Request要看前台的trace log,reply要看后台的trace log.

总结:这当中,常见的错误是Enum转化出错,尤其隐性转化(调用函数等等).所以最好验证这种错误的exception option打开,同时对各种warning也要留意

2. Combo Grid的selected item:在对应的presenter中以new一个item的方式赋新值,但是combo grid中没有更新。也就是说,前后不同步.

对策:不要new一个新的item,接着把这个item赋值给selected item;work的方式是,遍历所有item,通过比较field的值来找到所需的item,然后把这个item赋值给selected item

分析:应该是判断是否相等的equal方法,使用的是判断地址是否相同;应该使用判断成员是否相等的方式来判断是否为同一个item

3. Bind错误

Bind错误不容易发现,一个是因为compile time没有提示,第二个是因为思维上容易理所当然的认为所写的bind expression是对的。

比如,grid control里的binding;给non-editable的grid column一个two way的bind

对策:先考虑bind是否成功,然后再检查presenter是否设置正确了。

4. Build不足

在VS中unload部分project后进行debug,有时候会遇到比较奇怪的情况。

比如,在logic里面给subpresenter SetProperty成功(通过GetProperty可以立马查看是否成功),然后在另一个logic里面对这个 subpresenter GetProperty,发现里面的值是错误的。

在后台你修改通用的structure之后只build这个改动过的project,会出现莫名的错误。

比如没build整个contract只build一个contract;没整个wrapper只一个wrapper。(就这种情况而言,一般是其他project按照老 strucutre的结构大小来使用,内存分配会出问题,或者因为偏移量的问题读取错误内存块)

这两种情况,把相关的都重新Build一遍
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐