当数据来自实体框架时,我应该使用MVVM吗?

时间:2014-02-11 14:50:35

标签: c# entity-framework mvvm

我是MVVM的新手,并且有一个使用Entity Framework的项目。 我可以使用MVVM还是最好不要? 我应该在哪里封装EF?在viewModel或Model中? 以及如何处理数据库更改的通知?导致EntityFramework只是第一次查询,而不是定期查询。

提前致谢,Kfir

1 个答案:

答案 0 :(得分:0)

  

当数据来自实体框架

时,我应该使用MVVM吗?

当然! MVVM是一种模式,可帮助生成可测试代码,并在视图和模型之间实现强大的分离。因此,即使数据来自EF,也可以使用它。

  

我应该在哪里封装EF?

这取决于项目的整体架构。直接调用数据库的WPF应用程序与由调用服务的WPF客户端和调用数据库的服务组成的3层应用程序不具有相同的体系结构。

我总是推荐使用3层架构(使用IIS< - WCF - > WPF):实现MVVM的WPF应用程序不会直接调用数据库。在这种情况下,WPF应用程序甚至不知道有实体框架。该模型将是调用您的服务的代理,而Entity Framwork将仅在服务器端。