我还有一个关于使用C#和实体框架进行绑定的问题。
在这里,我希望将导航属性绑定到列表框或列表视图。
我在不同的帖子上看到,如果我使用列表后面的代码更新集合,则不会收到通知,因为集合不处理通知(无论如何总是同样的问题)。
人们建议使用ObservableCollection
作为示例,但是,这是我的问题,这归结为基本上复制了集合,因此,如果我修改它,我将不得不处理代码隐藏事实上,变更还应用于“原始”导航产权吗?
如果是这种情况,我在想:为什么不在分部类中创建一个名为MyObservableNavigationProperty的自定义属性。然后,我可以只与此集合进行交互,在更改集合时捕获事件并将更改应用于“原始”集合。这是一个很好的方法吗?或者我在这里感到困惑....
答案 0 :(得分:0)
我通常手工编写实体代码。它提供的灵活性通常比使用设计器生成一些属性所节省的时间更有用,特别是因为EF4可以generate proxies来执行重要的跟踪/延迟加载位。
也就是说,如果您没有该选项,可以尝试使用ADO.NET Self-Tracking Entity Generator Template生成实体。该集合从ObservableCollection<T>
生成继承。
如果那是不可能的,那么我认为你的部分类解决方案是可行的方法。