Dapper入门教程

什么是Dapper

Dapper是一个简单的.NET对象映射器,在速度方面具有"King of Micro ORM"的头衔,几乎与使用原始的ADO.NET数据读取器一样快。ORM是一个对象关系映射器,它负责数据库和编程语言之间的映射。

Dapper通过扩展IDbConnection提供一些有用的扩展方法去查询您的数据库。

Dapper是如何工作的

它可以分为三个步骤:

  • 创建一个IDbConnection接口对象;
  • 编写一个查询SQL来执行CRUD操作;
  • 将查询SQL作为Execute方法的参数传递。

安装

Dapper

Install-Package Dapper

通过NuGet安装:NuGet Gallery | Dapper 2.0.123

Dapper简单使用

1、连接数据库

使用Mockaroo - Random Data Generator and API Mocking Tool | JSON / CSV / SQL / Excel提供的脚本创建数据库表:

create table Developer (
	id INT,
	DeveloperName VARCHAR(50),
	Email VARCHAR(50),
	GithubURL VARCHAR(50),
	ImageURL VARCHAR(50),
	Department VARCHAR(50),
	JoinedDate DATE
);
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (1, 'Tadeas', 'tdemchen0@craigslist.org', 'tmccarney0@dropbox.com', 'http://dummyimage.com/156x100.png/5fa2dd/ffffff', 'Support', '8/26/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (2, 'Abram', 'asavaage1@flavors.me', 'adowns1@yelp.com', 'http://dummyimage.com/145x100.png/cc0000/ffffff', 'Human Resources', '12/22/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (3, 'Rubetta', 'rgaine2@patch.com', 'rpurkins2@bbc.co.uk', 'http://dummyimage.com/186x100.png/ff4444/ffffff', 'Business Development', '8/30/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (4, 'Kirbie', 'kkelwaybamber3@live.com', 'kducker3@ucla.edu', 'http://dummyimage.com/197x100.png/ff4444/ffffff', 'Legal', '5/16/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (5, 'Florie', 'fdaubney4@marketwatch.com', 'fpentin4@reuters.com', 'http://dummyimage.com/113x100.png/5fa2dd/ffffff', 'Marketing', '5/30/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (6, 'Sloane', 'sstothard5@com.com', 'spischoff5@blogtalkradio.com', 'http://dummyimage.com/123x100.png/cc0000/ffffff', 'Legal', '1/23/2023');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (7, 'Dorena', 'deitter6@nasa.gov', 'divatts6@harvard.edu', 'http://dummyimage.com/190x100.png/dddddd/000000', 'Research and Development', '3/6/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (8, 'Kennett', 'kheeley7@slate.com', 'kdyche7@hud.gov', 'http://dummyimage.com/242x100.png/5fa2dd/ffffff', 'Services', '7/30/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (9, 'Iormina', 'ilawton8@answers.com', 'iskitral8@sbwire.com', 'http://dummyimage.com/105x100.png/5fa2dd/ffffff', 'Research and Development', '4/25/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (10, 'Gusty', 'gkubec9@wikispaces.com', 'gconti9@unicef.org', 'http://dummyimage.com/157x100.png/cc0000/ffffff', 'Legal', '3/26/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (11, 'Charissa', 'chischkea@usa.gov', 'cmenaula@typepad.com', 'http://dummyimage.com/241x100.png/cc0000/ffffff', 'Research and Development', '11/8/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (12, 'Kare', 'kklugmanb@usgs.gov', 'kcashamb@elegantthemes.com', 'http://dummyimage.com/233x100.png/5fa2dd/ffffff', 'Training', '12/29/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (13, 'Skipper', 'sradleyc@phoca.cz', 'sdonaldsonc@bizjournals.com', 'http://dummyimage.com/136x100.png/dddddd/000000', 'Sales', '10/31/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (14, 'Hortense', 'hhinkleyd@yale.edu', 'hcraigmyled@ehow.com', 'http://dummyimage.com/140x100.png/dddddd/000000', 'Support', '4/18/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (15, 'Lian', 'lmialle@google.com', 'lorteauxe@umich.edu', 'http://dummyimage.com/183x100.png/ff4444/ffffff', 'Research and Development', '1/29/2023');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (16, 'Madison', 'mwilshawf@yahoo.com', 'mallredf@livejournal.com', 'http://dummyimage.com/231x100.png/cc0000/ffffff', 'Human Resources', '10/28/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (17, 'Orville', 'oattenbarrowg@unc.edu', 'omacgeffeng@ed.gov', 'http://dummyimage.com/158x100.png/dddddd/000000', 'Sales', '6/1/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (18, 'Dulcinea', 'dfilpih@cbslocal.com', 'dluckenh@yellowbook.com', 'http://dummyimage.com/168x100.png/dddddd/000000', 'Sales', '7/27/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (19, 'Brett', 'bperaccoi@ted.com', 'bsanperi@ft.com', 'http://dummyimage.com/241x100.png/ff4444/ffffff', 'Legal', '2/4/2023');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (20, 'Clerissa', 'carnellj@google.cn', 'cwildtj@over-blog.com', 'http://dummyimage.com/210x100.png/ff4444/ffffff', 'Services', '2/6/2023');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (21, 'Darla', 'dtintok@skype.com', 'dhadleighk@joomla.org', 'http://dummyimage.com/225x100.png/5fa2dd/ffffff', 'Training', '10/24/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values (22, 'Zeke', 'zdoverl@netlog.com', 'zgrotel@deviantart.com', 'http://dummyimage.com/125x100.png/ff4444/ffffff', 'Product Management', '8/17/2022');
insert into Developer (id, DeveloperName, Email, GithubURL, ImageURL, Department, JoinedDate) values 
  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值