完整的业务线应用程序 - PRISM MEF实体框架 - 示例?

时间:2013-07-27 22:21:00

标签: c# mvvm prism mef crud

是否有关于更高级业务应用程序的示例/教程/信息?有很多关于理解PRISM,MEF,MVVM,实体框架,通用存储库,棱镜背后的机制以及其他MVVM框架(如区域,导航等)的信息。

我知道如何连接数据库并切换视图并创建基本应用程序。

所以此时我有一个DataGrid,里面有我的数据库对象列表。让我们说在这一点上我甚至有模板,看起来很好看。

如何实现此操作的最后一部分以执行CRUD操作。是否更好直接在DataGrid中编辑并具有更新/添加/删除按钮?它应该更新换行吗?如果我想要显示自定义模态视图来编辑/添加数据怎么办?实际操作数据的最佳做法是什么?

您是否可以运行并实际查看/编辑/删除数据库中的记录的PRISM / MVVM / Entity Framework应用程序的示例?

我发现的所有示例都没有详细说明如何/为什么要实现最终的数据实现。

引用类似问题中的另一个答案:

  

PRISM附带的样品可满足您的所有需求。此外,PRISM是关于UI组合,数据访问超出范围。

我的问题是关于如何使用PRISM进行数据访问,模态视图,直接在网格中编辑等。

如果一个样本有一个窗口在数据库中列出数据并提供了CRUD函数,那么这些样本并不能满足我的全部需求。是否有任何样本显示所有这些如何一起工作?

1 个答案:

答案 0 :(得分:0)

在过去做过类似的事情后,我会创建一个数据服务,其唯一的工作就是促进数据库和用户的数据请求。

数据服务是唯一真正知道如何与数据库通信的部分,这些细节应该从消费者(您的视图模型等)中进行模糊处理。

创建数据服务后,该服务将保留可编辑的元组集合,处理对任何和所有元组的修改,并直接公开它们以绑定到View,最好通过ICollectionView接口。

然后,只需将该服务注入您的虚拟机(理想情况下通过一个界面来保持单元可测试)。

我知道这些概念都是高级的,但这就是我现在可以给你的一切。 This是我回过头来展示MVVM的一个项目,它有这个想法,虽然数据存储不是数据库(但不受数据服务概念的限制)。您可以随意浏览项目的源代码,希望您能在那里找到有用的东西。