一、摘要

一说到ADO.NET大家可能立刻想到的就是增、删、改、查(CRUD)操作,然后再接就想到项目中的SQLHelper。没错本课分享课阿笨给大家带来的是来源于github上开源的DAO数据库访问组件DBHelpers。如果您对本次分享《.NET轻量级DBHelpers数据访问组件》课程感兴趣的话,那么请跟着阿笨一起学习吧。

废话不多说,直接上干货,我们不生产干货,我们只是干货的搬运工。

二、涉及覆盖的知识点

2.1、原生ADO.NET简单的CRUD(增删改查)

Insert、Insert_Batch、Update、Update_Batch、Delete、Exist、GetById、GetByIds、GetList

GetByIdAutomaticTypeConversion、GetListByPage(内置分页)、GetListReturnDataTable

GetListReturnDataSet、GetListReturnDictionary、

ExecuteWithDBTransaction(本地DbTransaction事务操作)、

ExecuteWithTransactionScope(分布式TransactionScope事务操作)

2.2、ADO.NET在异步编程(Asyn Task)中的运用

InsertAsync、GetByIdAsync、GetListAsync

ExecuteNonQueryAsync、ExecuteObjectAsync、ExecuteListAsync

2.3、原生ADO.NET高级技巧修炼手册

CreateOrder(创建订单(采用sql拼接+for循环方式))。

CreateOrderByStoredProcedures_XMLPath创建订单(采用生成XML+SQL XML数据类型的XMLPath方式)。

Transact-SQL存储过程in输入、out输出、Return参数的运用。

三、什么是ADO.NET?

1)、ADO.NET是微软新一代.NET数据库的访问架构,ADO是ActiveX Data Objects的缩写。ADO.NET是数据库应用程序和数据源之间沟通的桥梁,主要提供一个面向对象的数据访问架构,用来开发数据库应用程序。

2)、ADO.NET 是 .NET 框架(.NET Framework)中的一个类库,用于实现 .NET 应用程序对于数据库的访问,主要包括 DbConnection,DbCommand,DataSet,DataAdapter 与 DataReader 等。

3)、ADO.NET五大对象分别是:

1、Connection(连接数据库)

2、Command(执行T-SQL语句)

3、DataAdapter(用户填充DataSet,断开模式)

4、DataReader(读取数据库,一种只读模式,只向前的)

5、DataSet(数据集,好比电脑的内存)

ADO.NET五大对象

四、DBHelpers介绍

4.1、DBHelpers是什么?

DBHelpers是一个简单但功能强大的库,用于使用简单的ADO.NET数据库访问组件。

4.2、DBHelpers包含哪些特征

Async(异步)、Batch execution(批量执行脚本)、Custom converters(自定义类型转换)、

Multi table retrieval(多结果集查询)、Easy safe parameterized DbCommand(简单安全的参数化)、

Automatic mapping of objects(自动映射类型)、Built in paging support(内置支持分页)、等等。

4.3、DBHelpers内置方法

ExecuteNonQuery、ExecuteReader、ExecuteScalar、

ExecuteDataTable、ExecuteDataSet、ExecuteArray、ExecuteDictionary、ExecuteObject、ExecuteList、

ExecuteNonQueryAsync、ExecuteObjectAsync、ExecuteListAsync

4.3、github下载地址:

https://github.com/nvivo/dbhelpers

4.4、nuget安装:

Install-Package DBHelpers

.NET轻量级DBHelpers数据访问组件的更多相关文章

  1. Oracle数据访问组件ODAC的安装方法

    Oracle数据访问组件ODAC(Oracle Data Access Components)顾名思义就是用来访问Oracle数据库的小程序.我们可以编程调用这些组件来实现在没有安装Oracle数据库 ...

  2. 测试 ClownFish、CYQ、Entity Framework、Moon、MySoft、NHibernate、PDF、XCode数据访问组件性能

    下期预告: 由于很多园友反馈,有的组件不应该缺席.测试复杂度不够.测试还缺乏一定的公平. 因此考虑在下一个版本中,确保在更加公平的前提下进行更高复杂度的测试 . 同时将分为2组测试,纯SQL组件及纯O ...

  3. Oracle数据访问组件ODAC的安装方法:

    Oracle数据访问组件ODAC(Oracle Data Access Components)顾名思义就是用来访问Oracle数据库的小程序.我们可以编程调用这些组件来实现在没有安装Oracle数据库 ...

  4. 超轻量级高性能ORM数据访问组件Deft,比dapper快20%以上

    超轻量级高性能ORM数据访问组件Deft,比dapper快20%以上 阅读目录 Deft简介 Deft 核心类介绍 Deft 3分钟即可上手使用 其他可选的配置参数 性能测试 Demo代码下载 回到顶 ...

  5. Agile.Net 组件式开发平台 - 数据访问组件

    Agile.DataAccess.dll 文件为系统平台数据访问支持库,基于FluentData扩展重写,提供高效的性能与风格简洁的API,支持多种主流数据库访问. 当前市面上的 ORM 框架,如 E ...

  6. .NET安装和配置Oracle数据访问组件(ODAC)

    Many ASP.NET applications access Oracle database for the data source. Oracle supports the .NET with ...

  7. Microsoft 数据访问组件 (MDAC) 的版本历史记录

    http://support.microsoft.com/kb/231943/zh-cn http://support.microsoft.com/kb/301202

  8. ClownFish:比手写代码还快的通用数据访问层

    http://www.cnblogs.com/fish-li/archive/2012/07/17/ClownFish.html 阅读目录 开始 ClownFish是什么? 比手写代码还快的执行速度 ...

  9. SRF之数据访问

    数据访问组件实现实体类和数据表映射.SQL语句配置执行.动态sql语句等功能,ORM方式能实现简单的对象和表的映射(配置类似hibernate),但比较单一(不支持一对多.多对多的情况),下边不做介绍 ...

随机推荐

  1. Windows下设置oracle数据库定时备份

    1编写备份脚本 echo backup oracle database...... echo %~dp0 set file_dir=%~dp0 echo backup time...... set & ...

  2. mysql grep database error(cannot rmdir /dbname)

    service mysql stop cd /var/lib/mysql/dbname rm -rf .fmr rm -rf .txt service mysql start srop databas ...

  3. Nginx报错:upstream timed out (110: Connection timed out)和client intended to send too large body【转】

    nginx日志报错 2018/01/26 16:36:49 [error] 23327#0: *54953 upstream timed out (110: Connection timed out) ...

  4. [WC2008]游览计划 「斯坦那树模板」

    斯坦那树 百度释义 斯坦纳树问题是组合优化问题,与最小生成树相似,是最短网络的一种.最小生成树是在给定的点集和边中寻求最短网络使所有点连通.而最小斯坦纳树允许在给定点外增加额外的点,使生成的最短网络开 ...

  5. 网络io模式(服务器请求应答模式)

    2014年1月19日 22:07:41 这几天看nginx 和 Apache的视频教程(马哥和邹老师)了解到了一些网络io模式(nginx的相关配置项为sendfile) 这里简单记录下来以备后用 A ...

  6. 【转】手把手教你 Mockito 的使用

    原文链接:https://segmentfault.com/a/1190000006746409 什么是 Mockito Mockito 是一个强大的用于 Java 开发的模拟测试框架, 通过 Moc ...

  7. 集合类List、Set、Map的区别、联系和遍历方式

    说集合之前,先说说数组和集合: 1.数组长度是固定的,当超过容量后会在内存中重新创建一个原来数组1.5倍长度的新数组,再把元素存进去:数组既可以存储基本数据类型,又可以存储引用数据类型. 2.集合长度 ...

  8. python中使用pillow绘制汉字

    # pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pillow from PIL import Image, ImageFont, I ...

  9. AnyRobot

    AnyRobot http://www.sohu.com/a/151456051_656915 https://www.sohu.com/a/238065475_656915 http://www.d ...

  10. mysql 索引理解

    数据的查询,都需要将数据从磁盘中加载到内存中进行运算加载,索引的出现,让原来每个数据块做一次IO减少为区间范围的快速定位,来减少块的io次数. 如上图,是一颗b+树,关于b+树的定义可以参见B+树,这 ...