1.引入 Dapper.dll类库

2.创建书籍模型book

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; public class Book
{
public int ID { get; set; } public string Name { get; set; } public string Txt { get; set; }
}

3.创建数据库帮助类(需要引用using Dapper;)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Dapper;
using System.Data;
using System.Data.SqlClient; public static class DBHelper
{
private static readonly string connString = "Data Source=.;Initial Catalog=qrab;Integrated Security=False;User ID=sa;Password=111111;Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False;";
//ConfigurationManager.ConnectionStrings["PharmacySystem"].ConnectionString;
private static IDbConnection _conn;
public static IDbConnection Conn
{
get
{
_conn = new SqlConnection(connString);
_conn.Open();
return _conn;
}
}
/// <summary>
/// 插入书籍
/// </summary>
/// <param name="book"></param>
/// <returns></returns>
public static int Insert(Book book)
{
using (Conn)
{
string query = "insert into Book(name,txt)values(@name,@txt)";
return Conn.Execute(query, book);
}
}
/// <summary>
/// 更新书籍
/// </summary>
/// <param name="book"></param>
/// <returns></returns>
public static int Update(Book book)
{
using (Conn)
{
string query = "update Book set name=@name,txt=@txt where id=@id";
return Conn.Execute(query, book);
}
}
/// <summary>
/// 删除书籍
/// </summary>
/// <param name="book"></param>
/// <returns></returns>
public static int Delete(Book book)
{
using (Conn)
{
string query = "delete from Book where id=@id";
return Conn.Execute(query, book);
}
}
/// <summary>
/// 删除书籍
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public static int Delete(string id)
{
using (Conn)
{
string query = "delete from Book where id=@id";
return Conn.Execute(query, new { id = id });
}
}
/// <summary>
/// 读取书籍列表
/// </summary>
/// <returns></returns>
public static IList<Book> GetList()
{
using (Conn)
{
string query = "select * from Book";
return Conn.Query<Book>(query).ToList();
}
}
/// <summary>
/// 根据ID取一本书籍
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public static Book GetEntity(string id)
{
Book book;
string query = "select * from Book where id=@id";
using (Conn)
{
book = Conn.Query<Book>(query, new { id = id }).SingleOrDefault();
return book;
}
} }

4.简单人增加删除修改操作

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace WindowsFormsApp2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
}
/// <summary>
/// 显示所有书籍
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnAll_Click(object sender, EventArgs e)
{
IList<Book> listBook = DBHelper.GetList();
gvBookList.AutoGenerateColumns = false;
gvBookList.DataSource = listBook;
}
/// <summary>
/// 添加书籍
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnAdd_Click(object sender, EventArgs e)
{
Book book1 = new Book
{
Name = @"1金2瓶3梅",
Txt = @"文学著作"
};
DBHelper.Insert(book1);
}
/// <summary>
/// 编辑书籍
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnEdit_Click(object sender, EventArgs e)
{
int id = ;//获取需要编辑书籍的ID
Book book1 = new Book
{
ID=id,
Name = @"修改Name",
Txt = @"修改txt"
};
DBHelper.Update(book1);
}
/// <summary>
/// 删除指定的书籍
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnDel_Click(object sender, EventArgs e)
{
int id = ;//获取需要删除书籍的ID
DBHelper.Delete(id.ToString());
}
}
}

5.效果图

上传不了附件,需要源码的可以留言。

.net ORM框架(Dapper简单应用)的更多相关文章

  1. .NET轻量级ORM框架Dapper入门精通

    一.课程介绍 本次分享课程包含两个部分<.NET轻量级ORM框架Dapper修炼手册>和<.NET轻量级ORM框架Dapper葵花宝典>,阿笨将带领大家一起领略轻量级ORM框架 ...

  2. Net系列框架-Dapper+简单三层架构

    Net系列框架-Dapper+简单三层架构 工作将近6年多了,工作中也陆陆续续学习和搭建了不少的框架,后续将按由浅入深的方式,整理出一些框架源码,所有框架源码本人都亲自调试通过,如果有问题,欢迎联系我 ...

  3. PHP ORM框架与简单代码实现(转)

    对象关系映射(Object Relational Mapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据 ...

  4. c# 国内外ORM 框架 dapper efcore sqlsugar freesql hisql sqlserver数据常规插入测试性能对比

    c# 国内外ORM 框架 dapper efcore sqlsugar freesql hisql sqlserver数据常规插入测试性能对比对比 在6.22 号发布了 c# sqlsugar,his ...

  5. 轻量型ORM框架Dapper的使用

    在真实的项目开发中,可能有些人比较喜欢写SQL语句,但是对于EF这种ORM框架比较排斥,那么轻量型的Dapper就是一个不错的选择,即让你写sql语句了,有进行了关系对象映射.其实对于EF吧,我说下我 ...

  6. .NET 轻量级 ORM 框架 - Dapper 介绍

    Dapper简单介绍: Dapper is a single file you can drop in to your project that will extend your IDbConnect ...

  7. 轻量级ORM框架Dapper应用一:Dapper安装

    一.Dapper简介 Dapper是一款轻量级ORM框架,为解决网站访问流量极高而产生的性能问题而构造,主要通过执行TSQL表达式而实现数据库的CQRS. 如果你在项目中遇到性能访问问题,选择Dapp ...

  8. ORM框架——Dapper的应用

    常见的ORM框架有EF,Dapper,NHibernate 参考:http://shuai7boy.iteye.com/blog/2357339 http://www.cnblogs.com/Sint ...

  9. 微型orm框架--dapper的简单使用

    1.安装 首先使用nuget安装dapper,因为这里的示例是使用mysql,所以还要安装mysql的驱动.如下图: 2 数据库表 脚本 ; -- -------------------------- ...

随机推荐

  1. request.getParameter()获取不到数据

    HTML中的form表单有一个关键属性 Content-Type=application/x-www-form-urlencoded 或multipart/form-data. 1. Content- ...

  2. 记账本微信小程序开发六

    记账本微信小程序开发六 我的界面 主界面

  3. Vue基础进阶 之 列表过渡

    在前面的博客我们一直在操作单个元素的过渡,如果是对多个元素过渡,例如列表,这时就要用到<transition-group>这个组件了: 如何使用:将要操作的列表元素放在<transi ...

  4. Luogu P1010 幂次方

    [橙题不会做系列]QAQ 是李老师上课的题目-- 这题最开始想法是打表做.事实证明这样做也可以( 老师用的是位运算-- 这种一步步分解也能想到用递归qwq #include <algorithm ...

  5. 写Java代码分别使堆溢出,栈溢出

    首先要搞清楚堆栈里放的什么东西: 栈存储运行时声明的变量——对象引用(或基础类型, primitive)内存空间,堆分配每一个对象内容(实例)内存空间. 一个变量可以先后指向多个对象实例:数组.链表等 ...

  6. Python socket文件传送md5校验

    soket_server import socket,os,hashlib server = socket.socket() server.bind(('0.0.0.0',9999)) server. ...

  7. go 编译:交叉编译&编译执行过程

    1. 交叉编译 编译Windows程序和mac程序 GOOS=windows GOARCH-amd64 go build main.go 转自:https://www.cnblogs.com/mafe ...

  8. [C++ Primer Plus] 第6章、分支语句和逻辑运算符(一)程序清单

    程序清单6.2 #include<iostream> using namespace std; void main() { char ch; cout << "Typ ...

  9. HTML5常用API

    .Fullscreen 该API允许开发者以编程方式将Web应用程序全屏运行,使Web应用程序更像本地应用程序. .Page Visibility 该API可以用来检测页面对于用户的可见性,即返回用户 ...

  10. Centos-6.5搭建oracle11g RAC集群

    一.基本概念 RAC( Real Application Clusters-----真正的应用集群) RAC数据库是Oracle公司数据库的集群解决方案.高可用性解决方案.两个或多个服务器之间通过一个 ...