为什么要用仓储(Respository)和工作单元?


仓储(Respository)是存在于工作单元和数据库之间单独分离出来的一层,是对数据访问的封装。其优点:

    1)业务层不需要知道它的具体实现,达到了分离关注点。

    2)提高了对数据库访问的维护,对于仓储的改变并不会改变业务的逻辑,数据库可以用Sql Server(该系列博客使用)、MySql等。

工作单元模式 ( Unit Of Work)是“维护一个被业务事务影响的对象列表,协调变化的写入和并发问题的解决”

比如:新入校一个同学,需要在班级,学校,学生,课程等多个表里同时操作。这些表要么都完成,要么都不完成。具有一致性。

在仓储模式中使用工作单元模式是为了当你操作多个仓储时,共用一个数据上下文(DbContext)使得这些仓储具有一致性。

在Entity Framework中可以把DbContext当作是一个工作单元。在同一个DbContext对多个仓储操作。所以工作单元模式并不是一定要自己实现,通过Entity Framework也可以实现。

上面的仓储模式其实通过对DbContext的使用了也实现了工作单元模式。

这里  源码下载(加微信号hwf10214)

c#   分享一个实战多子系统统一权限管理 完整实例,可以做二次开发,用到仓储 工作单元、Dapper、Automapper、WCF、  T4模板、Redis 等技术

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM