我是MVVM的新手,并且有一个使用Entity Framework的项目。 我可以使用MVVM还是最好不要? 我应该在哪里封装EF?在viewModel或Model中? 以及如何处理数据库更改的通知?导致EntityFramework只是第一次查询,而不是定期查询。
提前致谢,Kfir
答案 0 :(得分:0)
当数据来自实体框架
时,我应该使用MVVM吗?
当然! MVVM是一种模式,可帮助生成可测试代码,并在视图和模型之间实现强大的分离。因此,即使数据来自EF,也可以使用它。
我应该在哪里封装EF?
这取决于项目的整体架构。直接调用数据库的WPF应用程序与由调用服务的WPF客户端和调用数据库的服务组成的3层应用程序不具有相同的体系结构。
我总是推荐使用3层架构(使用IIS< - WCF - > WPF):实现MVVM的WPF应用程序不会直接调用数据库。在这种情况下,WPF应用程序甚至不知道有实体框架。该模型将是调用您的服务的代理,而Entity Framwork将仅在服务器端。