EF Generated Classes& MVVM项目

时间:2014-05-16 22:21:00

标签: c# wpf entity-framework mvvm

我开始尝试尊重MVVM模式并使用实体框架,但是我对不同的层组织感到有些困惑。

这是我目前关心的问题:EF根据我的数据库结构生成POCO类。 如果我明白,那些应该是我的模特。 与数据库的交互被排除在基本的MVVM模式之外(它们属于一个额外的层 - 通常称为我所见过的数据 - )

然而,那些POCO类没有实现INotifyPropertyChanged,这是我目前看到/理解的MVVM中的几个,这是一个非常关键的点,因为它允许Binding工作。

关于这个问题我几乎没有相关的链接,但我读到的大多数不同的答案只是让我的头脑越来越困惑。

归结为一个更简洁的问题:为了完成生成的POCO类并实现INotifyPropertyChanged,什么是理想的解决方案?

  • 考虑将POCO生成的类作为额外Layer的一部分,在它周围创建一个包装作为官方模型吗?
  • 创建第二个完成POCO的部分课程?
  • 在实现此接口时是否有EF生成类? (我现在不是说老实说,至少在我学习的时候。虽然可能会在以后很有趣)
  • 我也读过一些框架,但仍然在学习基础知识,我现在不用添加工具就自己有点挣扎,这可能让我的头脑更加困惑而不是现在有所帮助。
  • 别的什么?

感谢。

1 个答案:

答案 0 :(得分:1)

我个人创建了ViewModel对象,它暴露了UI感兴趣的POCO对象的元素 - 它似乎是相当多的重复,但它将UI与底层业务/数据对象分开。