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一遍
Error hard to found during my WCF/WPF Development
最新推荐文章于 2012-02-02 18:08:14 发布