Dapper入门使用,代替你的DbSQLhelper


Dapper介绍

Dapper是.Net下的一个轻量级ORM框架.在小型工具向的项目下,使用Dapper会使数据库操作层代码更加优雅.

Dapper的使用

在项目中使用引用Dapper非常简单,你可以选择两种方式:

1.在NuGet引用

2.Github下载源代码,添加到项目当中去

Dapper 项目地址  https://github.com/StackExchange/Dapper

 添加项目 Dapper  到你自己的项目当中去,这样可以直接调试Dapper的源代码

 个人感觉添加源代码到项目当中比较可靠,遇到问题可以直接跟踪

Dapper项目

添加Dapper源代码到项目当中

CURD操作 

表结构

1 CREATE TABLE [dbo].[BAS_NAME](
2     [ID] [INT] NULL,
3     [NAME] [VARCHAR](50) NULL,
4     [OTHER] [VARCHAR](50) NULL,
5     [DATE] [DATETIME] NULL
6 ) ON [PRIMARY]

1.Insert操作

代码中看出,直接使用Execute加实体的方式相比传统 SqlParameter的方式更加方便.

 1 IDbConnection conn = new SqlConnection(connectionString);
 2 //Insert
 3 string insetSql = "INSERT dbo.BAS_NAME(ID, NAME, OTHER, DATE)VALUES(@ID, @NAME, @OTHER, @DATE)";
 4 BAS_NAME nameInfo = new BAS_NAME();
 5 nameInfo.ID = 0;
 6 nameInfo.NAME = "小王";
 7 nameInfo.OTHER = string.Empty;
 8 nameInfo.DATE = DateTime.Now;
 9 var result = conn.Execute(insetSql, nameInfo);
10 
11 Console.Write(result);
12 Console.ReadKey();

当然了你也可以使用这种方式新增行

1 var result = 
2     conn.Execute(insetSql, new {ID = 1,NAME = "小李",OTHER="233",DATE = DateTime.Now });

2.UPDATE操作

 和Insert类似

1 BAS_NAME nameInfo = new BAS_NAME();
2 nameInfo.ID = 0;
3 nameInfo.NAME = "小王233";
4 nameInfo.OTHER = "233";
5 nameInfo.DATE = DateTime.Now;
6 
7 string upDateSql = " UPDATE dbo.BAS_NAME SET NAME = @NAME,OTHER= @OTHER,[DATE] = @DATE WHERE ID = @ID";
8 
9 var result = conn.Execute(upDateSql, nameInfo);

3.Select操作

string selectSql = "SELECT * FROM BAS_NAME";
List basNameList = conn.Query(selectSql).ToList();

selectSql = "SELECT * FROM BAS_NAME WHERE ID = @ID";
basNameList = conn.Query(selectSql,new { ID = 1 }).ToList();

4.Delete操作

var result = conn.Execute("DELETE FROM dbo.BAS_NAME WHERE ID = @ID", new { ID = 0 });