关于MVVM + PRISM模式的实体框架6

Dan*_*eda 2 c# entity-framework dependency-injection prism mvvm

将实体框架与PRISM,MVVM和(业务层)一起使用的更好方法是什么?我们有时间学习,应用程序(C#)将是300个实体+.

我看到了一些关于使用PRISM的DI以及EF,POCO(CodeFirst)直接使用,ModelFirst ...

我对PRISM,MVVM,EF和DI没有多少经验,只有一点理论.

什么是最好的建筑?

Rys*_*gan 7

如果我正确理解了这个问题,那么您已经有了基于PRISM架构的演示和业务层,并且您将实体框架视为数据访问层.

架构

Julie Lerman在Pluralsight上有一个名为Entity Framework的企业课程.本课程讨论了企业级应用程序中实体框架体系结构方面的最佳实践,它推断出大量数据.

EF位于数据层,但业务层应该依赖于存储库/工作单元层.存储库层的本质是封装冗余数据访问代码.Repostitory由Get(GetCustomerById,GetAllCustomers),Add(AddCustomer),Remove(RemoveCustomer),Send(SendToDatabase)等动词组成.

该方法

代码第一种方法是最新的,我会推荐它.您可以在Stackoverflow 上的Code-first vs Model/Database-first主题上找到全面的论文.

领域驱动设计

域驱动设计(DDD)是一种有助于管理大量实体的模式.它支持关注点分离.在dddcommunity上阅读更多相关信息.观看核心业务应用程序和域驱动设计方法中的演示实体框架,该方法在实践中显示实体框架和DDD.