轻量级ORM《sqlcommon》第一个版本发布了!!!

时间:2022-04-21 01:56:57

一、sqlcommon的特色

1. 轻量级,整个包只有123kb

2. 性能好,自测。。。

3. API和功能简单、代码简短、可维护性好基本都能看懂。这个点我认为很重要,这意味着这个包你可以自行维护修改(修改版只限自己使用尊重一下作者创作权)。

4. 面向ADO.NET标准接口实现强大的兼容,不依赖具体数据库驱动程序。

5. 组件独立,sqlcommon的几大核心组件,都是可以独立起来使用的,比如你不会写IL你就可以利用我写的继续扩展查询API

二、sqlcommon的极大核心组件

  sqlcommon分为common和expression两个文件夹。common文件夹中包含一个轻量级的orm功能类似《dapper》980行代码。expression文件夹中包含linq语法糖,用于自动生成sql。

1.TypeConvert-类型转换器

这个API是用来解序列的,底层采用IL动态创建解码函数(缓存),实际上会比直接反射性能略好

轻量级ORM《sqlcommon》第一个版本发布了!!!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

这个API是用于序列化对象将DataReader与实体类型进行动态绑定,底层采用IL实现

轻量级ORM《sqlcommon》第一个版本发布了!!!

2. TypeMapper-类型映射

 

 

 这个API绑定实体类型中的每个属性的绑定规则,在TypeMapper中有定义,你可以通过实现ITypeMapper接口,来编写自己的TyperMapper。具体可以参照我的源代码

var handler = TypeConvert.GetSerializer<Student>(new CustomMapper(), reader);

 3. SqlMapper