FreeSql.Repository 通用仓储层功能】的更多相关文章

前言 好多年前,DAL 作为数据库访问层,其实是非常流行的命名方式. 不知道从什么时候开始,仓储层成了新的时尚名词.目前了解到,许多人只要在项目中看见 DAL 就会觉得很 low,但是比较可笑的一点是,多数的仓储层与 DAL 实质在做同样的事情. 本文正要介绍这种比较 low 的方式,来现实通用的仓储层. 参考规范 与其他规范标准一样,仓储层也有相应的规范定义.FreeSql.Repository 参考 abp vnext 代码,定义和实现基础的仓储层(CURD),应该算比较通用的方法吧. IB…
欢迎来到<FreeSql.Repository 仓储模式>系列文档,完整文档请前往 wiki 中心:https://github.com/dotnetcore/FreeSql/wiki FreeSql是功能强大的 .NET ORM,支持 .NetFramework 4.0+..NetCore 2.1+.Xamarin 等支持 NetStandard 所有运行平台.支持 MySql/SqlServer/PostgreSQL/Oracle/Sqlite/Firebird/达梦/神通/人大金仓/翰高…
写在开头 2018年11月的某一天,头脑发热开启了 FreeSql 开源项目之旅,时间一晃已经四年多,当初从舒服区走向一个巨大的坑,回头一看后背一凉.四年时间从无到有,经历了数不清的日夜奋战(有人问我花了多长时间投入,答案:全职x2 + 前两年无休息,以及后面两年的持续投入).今天 FreeSql 已经很强大,感谢第一期.第二期.第N期持续提出建议的网友. FreeSql 现如今已经是一个稳定的版本,主要体现: API 已经确定,不会轻易推翻重作调整,坚持十年不变的原则,让使用者真真正正的不再关…
前言 年底工作比较忙,年度总结还没写,项目要上线,回老家过年各种准备.尤其是给长辈给侄子侄女准备礼物头都大了. 原来想年前先出一版能用的,我看有点悬了,尽量先把大体功能弄出来,扔掉一些,保证能考试,然后再搞点扩展的东西. 本节主要是做一下EF的封装,在DDD设计中,有两个概念不得不提,工作单元模式和仓储模式.纯属个人理解,不对的地方大家交流. 下面是一张图来自Microsoft 文档站点 仓储模式 定义 Repository模式用于通过抽象接口来管理CRUD操作,该接口公开领域实体并隐藏数据库访…
Generic Repository Pattern MVC Generic Repository Pattern MVC 原文链接:http://www.codeproject.com/Articles/1095323/Generic-Repository-Pattern-MVC 良好的架构师任何项目的核心,开发人员一直在寻找一个牛X的架构,它能减少重复代码,分离数据访问与业务逻辑.因此,我们需要在MVC中使用EF创建一个泛型仓储类.如果不了解EF,去这里学习.在开始之前,我们需要了解什么是仓…
书接上文,继续搭建我们基于.netCore 的开发框架.首先是我们的项目分层结构. 这个分层结构,是参考张老师的分层结构,但是实际项目中,我没有去实现仓储模型.因为我使用的是EFCore ,最近也一直在想,EFCore 在我们的架构体系中到底扮演着什么样的角色?? 当然,实现仓储层,也有他的好处,如果真的以后要更换ORM框架的时候,不用去更改服务层逻辑,不用直接在仓储里面做更改就可以了.但是对于小项目,可能运行个十年都不会换数据库,不会换ORM的项目,仓储层的意义在哪? 希望对此有自己想法的朋友…
原文链接:http://www.codeproject.com/Articles/1095323/Generic-Repository-Pattern-MVC 良好的架构师任何项目的核心,开发人员一直在寻找一个牛X的架构,它能减少重复代码,分离数据访问与业务逻辑.因此,我们需要在MVC中使用EF创建一个泛型仓储类.如果不了解EF,去这里学习.在开始之前,我们需要了解什么是仓储模式,为什么使用仓储模式. 仓储模式和工作单元 简言之,仓储模式意味着,数据访问层与业务逻辑层之间的抽象,这是非常有利于单…
最近趁着不忙,在构思一个搭建一个开源的完整项目,至于原因以及整个项目框架后边文章我再说明.既然要起一个完整的项目,那么数据仓储访问就必不可少,这篇文章我主要介绍这个新项目(OSS.Core)中我对仓储层的简单思考和实现过程(当前项目还处在搭建阶段),主要集中在以下几个方面: 1. 数据仓储层的需求 2. ORM框架选择 3. OSS.Core仓储层设计实现 4. 调用示例 下边的实现部分中可能需要你对.NET的 泛型,委托,扩展,表达式等有一个基础了解.正是因为这些语言特性,方便我们对操作共性的…
浅谈orm 记得四年前在学校第一次接触到 Ling to Sql,那时候瞬间发现不用手写sql语句是多么的方便,后面慢慢的接触了许多orm框架,像 EF,Dapper,Hibernate,ServiceStack.OrmLite 等.当然每种orm都有各自的优势,也有不足的地方.园子里也有很多大神开源了他们写的orm,如SqlSugar,Chloe.ORM,CYQ.Data 等.先不说这些开源的orm使用度怎么样,我觉得起码从开源的精神上就很可嘉了,我也曾下载过这几位大神的源码进行学习. 所有o…
前沿 园子里已有挺多博文介绍了EFCore+Mysql/MSSql如何进行使用,但实际开发不会把EF层放在Web层混合起来,需要多个项目配合结构清晰的进行分层工作,本文根据个人实践经验总结将各个项目进行分层,仅供想自己搭建,包含数据仓储以及分页多字段排序. 目录结构 1.实体层(EF)搭建 1.1添加Nuget包 1.2添加实体 1.3构造DbContext 1.4数据迁移生成数据库 2.仓储层搭建 2.1添加Nuget包 2.2添加必要的支持IEnumerable<T>和IQueryable…