把Dapper 换成 SqlSugar ORM类的要领详解

为什么要写这篇文章

因数我看到许多人固然用着SqlSugar,可是同时也用着Dapper,因为SqlSugar兼容了Dapper所有API,所以既然你用了SqlSugar那么就没有须要在同一个项目中利用2个ORM

所以这篇文章是给利用SqlSugar可能你想利用SqlSugar的伴侣看的

Dapper 先容

Dapper是一个轻量级开源的ORM类,他是通过扩展IDbConnection提供一些有用的扩展要领去查询您的数据库,所以Ado.Net支持的数据库,他都可以支持。

在速度方面具有“King of Micro ORM”的头衔,险些与利用原始的ADO.NET数据读取器一样快。许多人第一次利用了他之后,就深深的喜欢上他了。

SqlSugar 先容

SqlSugar 同样轻量级小巧,成果方面越发全面,需求都是来自1000多开拓人员的真实项目需求,在这些需求长举办完美的设计,颠末5年多的积聚,

可以完完满意企业级的所有需求出格是查询成果,支持了各类范例的返回譬喻DataTable、List、字典等,还支持各类查询,

譬喻一次查询多个功效集,虽然也支持存储进程

机能比拟

在基本成果查询上机能两边是相当靠近的,而且在差异CPU多台电脑长举办过大量测试,机能SqlSugar一点不占下风,甚至更好,

在SqlSugar源码中有比拟代码,这边我就不多先容了,机能永远是自个比才是真实的,别人比都是虚假的

移植教程

1、Sql加参数查询

Dapper 利用Sql加参数查询

/// <summary> /// 查询列表 /// </summary> /// <param>查询的sql</param> /// <param>替换参数</param> /// <returns></returns> public static List<T> Query(string sql, object param) { using (SqlConnection con = new SqlConnection(connectionString)) { return con.Query<T>(sql, param).ToList(); } }

SqlSugar 利用Sql加参数查询

/// <summary> /// 查询列表 /// </summary> /// <param>查询的sql</param> /// <param>替换参数</param> /// <returns></returns> public static List<T> Query(string sql, object param) { using (SqlSugarClient con =new SqlSugar.SqlSugarClient(connectionConfig)) { return con.Ado.SqlQuery<T>(sql, param); } }

个中Object param支持3种范例

1、new {id=1} 匿名工具

2、SugarParameter

3、SugarParameter[] 可能List<SugarParameter>

2、按照Sql查询单条

Dapper按照Sql查询单条

/// <summary> /// 查询第一个数据 /// </summary> /// <param></param> /// <param></param> /// <returns></returns> public static T QueryFirst(string sql, object param) { using (SqlConnection con = new SqlConnection(connectionString)) { return con.QueryFirst<T>(sql, param); } }

SqlSugar按照Sql查询单条

/// <summary> /// 查询列表 /// </summary> /// <param>查询的sql</param> /// <param>替换参数</param> /// <returns></returns> public static List<T> Query(string sql, object param) { using (SqlSugarClient con =new SqlSugar.SqlSugarClient(connectionConfig)) { return con.Ado.SqlQuerySingle<T>(sql, param); } }

3、增、删、改

Dapper增、删、改

/// <summary> /// 增删改 /// </summary> /// <param></param> /// <param></param> /// <returns></returns> public static int Execute(string sql, object param) { using (SqlConnection con = new SqlConnection(connectionString)) { return con.Execute(sql, param); } }

SqlSugar增、删、改

/// <summary> /// 增、删、改 /// </summary> /// <param>查询的sql</param> /// <param>替换参数</param> /// <returns></returns> public static int Query(string sql, object param) { using (SqlSugarClient con =new SqlSugar.SqlSugarClient(connectionConfig)) { return con.Ado.ExecuteCommand(sql, param); } }

4、DataReader读取数据

Dapper DataReader读取数据

/// <summary> /// Reader获取数据 /// </summary> /// <param></param> /// <param></param> /// <returns></returns> public static IDataReader ExecuteReader(string sql, object param) { using (SqlConnection con = new SqlConnection(connectionString)) { return con.ExecuteReader(sql, param); } }

SqlSugarDataReader读取数据

/// <summary> /// 获取DataReader /// </summary> /// <param>查询的sql</param> /// <param>替换参数</param> /// <returns></returns> public static IDataReader Query(string sql, object param) { using (SqlSugarClient con =new SqlSugar.SqlSugarClient(connectionConfig)) { return con.Ado.GetDataReader(sql, param); } }

5、获取首行首列

Dapper获取首行首列

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsdxyj.html