Dapper入门使用
作为高性能处理的一个ORM框架,区别于EF和Castle框架,主要应该于轻量级系统中,类似于Ado.Net的扩展,支持各种数据库,sql,事务等。
首先引入NuGet包Dapper
创建Dapper的工具类:
public class Dappertools{public static string ConnectionString = "数据库连接字符串";/// <summary>/// 添加./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <param name="t">传入实体类型.</param>/// <returns>int.</returns>public static int Add<T>(string sql, T t)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Execute(sql,t);}}/// <summary>/// 批量添加./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <param name="t">传入泛型类.</param>/// <returns>int.</returns>public static int Add<T>(string sql, List<T> t)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Execute(sql, t);}}/// <summary>/// 删除./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <param name="t">传入实体类型.</param>/// <returns>int.</returns>public static int Delete<T>(string sql, T t)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Execute(sql, t);}}/// <summary>/// 批量删除./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <param name="t">传入泛型类.</param>/// <returns>int.</returns>public static int Delete<T>(string sql, List<T> t)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Execute(sql, t);}}/// <summary>/// 修改./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <param name="t">传入实体类型.</param>/// <returns>int.</returns>public static int Update<T>(string sql, T t)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Execute(sql, t);}}/// <summary>/// 批量修改./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <param name="t">传入泛型类.</param>/// <returns>int.</returns>public static int Update<T>(string sql, List<T> t)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Execute(sql, t);}}/// <summary>/// 查询./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <returns>泛型类.</returns>public static List<T> Query<T>(string sql)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Query<T>(sql).ToList();}}/// <summary>/// 查询指定数据./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <param name="t">传入泛型类.</param>/// <returns>类.</returns>public static T Query<T>(string sql, T t)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Query<T>(sql, t).SingleOrDefault();}}/// <summary>/// 查询的in操作./// </summary>/// <typeparam name="T">实体类型.</typeparam>/// <param name="sql">传入sql执行语句.</param>/// <returns>泛型类.</returns>public static List<T> Query<T>(string sql, int[] ids)where T : class{using (IDbConnection connection = new SqlConnection(ConnectionString)){return connection.Query<T>(sql, new { ids }).ToList();}}}
创建好工具类后就可以在其他方法中调用了,此处为基础用法,最好为创建泛型基类,使用单例模式提供实例。
创建实体类,实体类与数据库表相对应。
Dapper入门使用相关推荐
- .NET轻量级ORM框架Dapper入门精通
一.课程介绍 本次分享课程包含两个部分<.NET轻量级ORM框架Dapper修炼手册>和<.NET轻量级ORM框架Dapper葵花宝典>,阿笨将带领大家一起领略轻量级ORM框架 ...
- Dapper入门学习
今天了解并学习了下Dapper的用法,这里简单介绍下 1.安装Nuget Dapper Package包 2.代码 using (IDbConnection connection = new SqlC ...
- Dapper入门教程
什么是Dapper Dapper是一个简单的.NET对象映射器,在速度方面具有"King of Micro ORM"的头衔,几乎与使用原始的ADO.NET数据读取器一样快.ORM是 ...
- .net Dapper 学习系列(1) ---Dapper入门
目录 写在前面 为什么选择Dapper 在项目中安装Dapper 在项目中使用Dapper 在项目中使用Dapper 进行单表增删改数据操作 总结 写在前面 Dapper 是一款轻量级ORM架构.为解 ...
- Asp.NET Core2.0 项目实战入门视频课程_完整版
END OR START? 看到这个标题,你开不开心,激不激动呢? 没错,.net core的入门课程已经完毕了.52ABP.School项目从11月19日,第一章视频的试录制,到今天完整版出炉,离不 ...
- .NET Core实战项目之CMS 第五章 入门篇-Dapper的快速入门看这篇就够了
写在前面 上篇文章我们讲了如在在实际项目开发中使用Git来进行代码的版本控制,当然介绍的都是比较常用的功能.今天我再带着大家一起熟悉下一个ORM框架Dapper,实例代码的演示编写完成后我会通过Git ...
- Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示...
Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...
- 【快速入门ORM框架之Dapper】大牛勿进系列
[快速入门ORM框架之Dapper]大牛勿进系列 原文:[快速入门ORM框架之Dapper]大牛勿进系列 前言:dapper是什么?Dapper是.NET下一个micro的ORM,它和Entity F ...
- ABP入门教程(五)集成Dapper
如果在项目中要直接写T-SQL,可以引入Dapper 1,在EntityFrameworkCore层和Application层添加引用: Abp.Dapper 2,在EntityFrameworkMo ...
最新文章
- 22021年江苏高考成绩查询,江苏高考成绩查询系统
- 编写程序,输出所有3位数的水仙花数
- java.lang.IllegalStateException: ContainerBase.addChild: start
- XPS 15 9530使用Windows10频繁发生Intel HD Graphics 4600驱动奔溃的一种解决方法
- 国际千人基因组计划数据库怎么用起来?
- [转]最常用的15大Eclipse开发快捷键技巧
- 【Proteus仿真】220V转5V向单片机供电
- SEO:避免关键词内部竞争带来的无法收录问题,
- [转]ASP.NET在线用户列表精确版—解决用户意外退出在线列表无法及时更新问
- ajax爬取微博,自动滚屏抓取新浪微博
- python google earth_如何用python编程控制GoogleEarth
- 单片机i o口扩展 c语言,基于2片74LS138的单片机I/O口扩展分析
- C++ 类成员函数的函数指针
- PAT A1008 Elevator
- 2020年11月4日
- 宽度优先搜索python_宽的解释|宽的意思|汉典“宽”字的基本解释
- 北邮光纤通信技术光纤通信技术 阶段作业一
- 微软官方32位版Windows Server 2008下载
- 机器学习技法 之 梯度提升决策树(Gradient Boosted Decision Tree)
- 压缩感知中的数学知识:投影矩阵(projection matrix)