天天看点

[LINQ2Dapper]最完整Dapper To Linq框架(三)---实体类关系映射

此特性需要安装Kogel.Dapper.Mssql或者Oracle 3.06及以上版本,实体类层需要安装Kogel.Dapper.Extension 3.06及以上版本

1.实体类和数据库关系映射特性

实体类名称和数据库表名不一致,或者属性名称和字段不一致

可以使用 [Display(Rename = "名称")] 特性标识

[LINQ2Dapper]最完整Dapper To Linq框架(三)---实体类关系映射

[LINQ2Dapper]最完整Dapper To Linq框架(三)---实体类关系映射

Rename填写数据库对应的表名或者字段名称,用来映射表关系

执行效果

查询时需要使用 FieldMatch<实体类>() 函数匹配隐射

2.非表映射关系

可以使用   [Display(IsField = false)] 特性标识

[LINQ2Dapper]最完整Dapper To Linq框架(三)---实体类关系映射

框架隐射时就会排除该字段

3.实体类预加载

        在系统启动时可以使用 EntityCache.Register 注册实体类到内存中,后续表达式不会在重复反射实体类,减少反射时间,提升性能

此方法有三个重载

1.Register(Type type)

例如

EntityCache.Register(typeof("实体类"))

2.Register(Type []type)

可以通过反射获取实体类类型数组

3.Register(string assemblyString)

assemblyString:通过给定程序集的长格式名称加载程序集。

例如

EntityCache.Register("实体类层的类库名称")

完整Demo可以去Github上下载:

https://github.com/a935368322/Kogel.Dapper.Test

如有问题也可以加QQ群讨论:

技术群 710217654

框架开源,可以加群下载源码