设为首页 加入收藏

TOP

Dapper入门使用,代替你的DbSQLhelper
2019-09-02 23:56:20 】 浏览:11
Tags: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<BAS_NAME> basNameList = conn.Query<BAS_NAME>(selectSql).ToList();

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

 

4.Delete操作

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

 

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇引用KBC.PetroSIM.Interop的dll,.. 下一篇程序部署到服务器后非常慢!!!

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目