我有一个使用Prism / Unity,.Net 4和Entity Framework 4.4的WPF应用程序。对.Net和EF进行了测试升级。
.Net到4.5.1,EF到6.1。对于实体框架,我也选择使用DbContext代替ObjectContext。
在遇到一些最初的问题后,我可以构建解决方案,但是在测试应用程序时出现了一些问题。在使用两个(DevExpress)网格控件的地方,我有不同的看法。一个绑定到ViewModel中的ObservableCollection,另一个绑定到第一个gridcontrol的选定项中的(子)集合。
升级后,添加到所选项目“子集合”中的任何对象都不会立即在第二个gridcontrol中显示/反射。这始终在升级之前有效,发生了什么变化?
行为发生这种变化的原因是DbContext的T4模板不使用实现INotifyCollectionChanged的集合。一种解决方法是修改T4模板(在xxModel.tt文件中):
我在以下文章的标题“为数据绑定更新代码生成”下找到了上述技巧:使用WPF进行数据绑定
我还在DevExpress上做了一个支持案例,在该案例中,对该问题进行了进一步的说明:https : //www.devexpress.com/Support/Center/Question/Details/T212183
希望这对其他人也有帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句