0.数据库及实体类
create table Users ( Id int identity(1,1) primary key, Name nvarchar(16) not null, Password nvarchar(128) not null, Email nvarchar(32), Address nvarchar(128) )
public class Users { public int Id { get; set; } public string Name { get; set; } public string Password { get; set; } public string Email { get; set; } public string Address { get; set; } }
1.安装dapper,并引入命名空间
2.增
//单条插入 IDbConnection conn = new SqlConnection(connStr); Users users = new Users() { Address = "zhongguo", Email = "zhongguo@qq.com", Name = "zg", Password="123456" }; int result1 = conn.Execute("insert into users (Name,Password,Email,Address) values(@Name,@Password,@Email,@Address)", users); //批量插入 List<Users> list = new List<Users> { new Users(){Address="beijing",Email="beijing@qq.com",Name="bj", Password="123456"}, new Users(){Address="shanghai",Email="shanghai@qq.com",Name="sh", Password="123456"}, new Users(){Address="guangzhou",Email="guangzhou@qq.com",Name="gz", Password="123456"}, new Users(){Address="shenhzen",Email="shenhzen@qq.com",Name="sz", Password="123456"} }; int result2 = conn.Execute("insert into users (Name,Password,Email,Address) values(@Name,@Password,@Email,@Address)", list);
3.删
IDbConnection conn = new SqlConnection(connStr); int result = conn.Execute("delete from users where Id=@Id", new { Id = 1 });
4.改
IDbConnection conn = new SqlConnection(connStr); int result = conn.Execute("update users set Name=@Name", new { Name = "newName" });
5.查
IDbConnection conn = new SqlConnection(connStr); //查询单条 Users user = conn.QueryFirstOrDefault<Users>("select * from users where Name=@Name", new { Name = "bj" }); //查询多个 var list1 = conn.Query<Users>("select * from users where Name=@Name", new { Name = "bj" }); //in方式查询 int[] ids = { 1, 2, 3 }; var list2 = conn.Query<Users>("select * from users where id in @id", new { id = ids }); //一次执行多条查询语句,可以是不同的表 var reader = conn.QueryMultiple("select * from users where id>=5;select * from users where id<5"); var list3 = reader.Read<Users>(); var list4 = reader.Read<Users>();