阅读目录
引言
环境准备
Dapper 实体操作简单使用
针对DapperExtensions简单封装
使用sqlsuger 打造简易实体类生成工具
回到顶部
引言
由公司需要使用dapper 同时支持多数据库 又需要支持实体类 又需要支持sql 还需要支持事务 所以采用了 dapper + dapperExtensions 并配套 生成实体类小工具的方式
回到顶部
环境准备
dapper环境
nuget中 下载安装 Dapper, DapperExtensions.NetCore
数据驱动准备
orcale: Oracle.ManagedDataAccess.Core
SQLite: System.Data.SQLite.Core
日志组件
log4net
回到顶部
Dapper 实体操作简单使用
复制代码
var orcalConn = new OracleConnection(strConn);
var orcaleconfig = new DapperExtensionsConfiguration(typeof(AutoClassMapper<>), new List
(), new OracleDialect());
var orcaleGenerator = new SqlGeneratorImpl(orcaleconfig);
connection = new Database(orcalConn, orcaleGenerator);
复制代码
注:数据库不同时 改变 这段内容即可
插入数据使用方式举例:
Connection.Insert(list, tran, commandTimeout);
回到顶部
针对DapperExtensions简单封装
新建core 类库项目 并引用好所需nuget包
增加以下类
ConnectionFactory.cs
DapperHelper.cs
DatabaseType.cs
IDapperHelper.cs
LogHelper.cs
LogLev.cs
引用类库项目后调用方式如下:
在配置文件appsettings.json 中增加
复制代码
"Connections": {
"DefaultConnect": "Data Source=192.168.1.xxx/orcl;User ID=xxx;Password=xxxx;"
}
复制代码
单元测试示例
注: 需要在引用的项目中增加log4net.config文件 并设置始终复制 或者较新则复制
文件参考如下:
log4net.config
回到顶部
使用sqlsuger 打造简易实体类生成工具
新建core 控制台程序
添加appsettings.json
复制代码
{
"Connections": {
"DefaultConnect": "Data Source=192.168.1.xxx/orcl;User ID=xxx;Password=xxx;"
},
"Settings": {
"NameSpace": "DBModels",//命名空间
"RelativePath": "AuthService/Models",//相对路径地址
"FullPath": "",//全路径地址 填写以后 相对路径地址失效
"GenerateTables": "USER" //需要生成的表名 不填默认生成全部的表
}
}
复制代码
改变Program.cs 如下(简易版本 注释部分内容为 继承基类的配置 如需要继承基类 去除注释部分代码即可)
Program.cs
标签: .net core, DapperExtensions, sqlsugerhttps://www.cnblogs.com/nontracey/p/9988759.html