因为我一直都不看好这些ORM框架所以缺点写多了点,可能还有些优点是我不知道的,路过的人要是知道可以给我留言,我再补上。
那现在来谈一下我自己的ORM框架,之所以称它为ORM框架是因为,它也达到了上面ORM框架的几个优点。
首先我基于抽像数据操作层,写了一套基于ADO.NET的抽像操作数据库的方法DbHelper
除却转换部分,Sql语句的编写也是一大学问,一般的编程语言都没有为sql语句定义类型,这是因为每种数据库的sql语句风格都是不一样的,难以给出一个统一的方案。退而求其次,一般的编程语言都采用字符串形式传递sql语句到数据库驱动程序。抛弃各种各样的sql语句的学习之外,这种方式有一个很大的弊端,那就是sql语句的拼写极容易由于手误而犯错。
Dapper 有多库访问组件,做不了同一个查询语句适用多种数据库。(select * from table这种除外)
EF 有多库访问组件,可以做到同一个查询适用多种数据库,但是命名空间引用不同需要自已用仓储实现多库
SqlSugarRepository 有多库访问组件,可以做到同一个查询适用多种数据库,已经实现内部工厂,比仓储模式的应变能力更强。
|