DataAbstractions.Dapper 3.0.0

A light abstraction around Dapper and Dapper.Contrib that also maintains the behavior IDbConnection. This library facilitates a loosely coupled design and unit testing.

Install-Package DataAbstractions.Dapper -Version 3.0.0
dotnet add package DataAbstractions.Dapper --version 3.0.0
<PackageReference Include="DataAbstractions.Dapper" Version="3.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DataAbstractions.Dapper --version 3.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

DataAbstractions.Dapper

A light abstraction around Dapper and Dapper.Contrib that also maintains the behavior IDbConnection. This library facilitates a loosely coupled design and unit testing.

IDataAccessor Interface

The IDataAccessor interface encapsulates Dapper extension methods. Just provide the connection to the DataAccessor.


IDataAccessor dataAccessor = new DataAccessor(new SqlConnection(connectionString));
        

Execute Dapper queries and commands as you would normally.


var person = await dataAccessor.QueryAsync<Person>(sql, new {Id});

Note: The dataAccessor should be disposed appropriately.

Dapper.Contrib

IDataAccessor includes the Dapper.Contrib extension methods


dataAccessor.Insert(new Person { Name = "John Doe" });

Keeps IDbConnection behavior

IDataAccessor implements IDbConnection, so you can access things like the ConnectionTimeout, ConnectionString, and ConnectionState etc.

If you need access to the actual connection object, use GetUnderlyingConnection():

IDbConnection connection = dataAccessor.GetUnderlyingConnection();

DataAbstractions.Dapper

A light abstraction around Dapper and Dapper.Contrib that also maintains the behavior IDbConnection. This library facilitates a loosely coupled design and unit testing.

IDataAccessor Interface

The IDataAccessor interface encapsulates Dapper extension methods. Just provide the connection to the DataAccessor.


IDataAccessor dataAccessor = new DataAccessor(new SqlConnection(connectionString));
        

Execute Dapper queries and commands as you would normally.


var person = await dataAccessor.QueryAsync<Person>(sql, new {Id});

Note: The dataAccessor should be disposed appropriately.

Dapper.Contrib

IDataAccessor includes the Dapper.Contrib extension methods


dataAccessor.Insert(new Person { Name = "John Doe" });

Keeps IDbConnection behavior

IDataAccessor implements IDbConnection, so you can access things like the ConnectionTimeout, ConnectionString, and ConnectionState etc.

If you need access to the actual connection object, use GetUnderlyingConnection():

IDbConnection connection = dataAccessor.GetUnderlyingConnection();

Release Notes

Upgraded Dapper to v2.0.35  and Dapper.Contrib to v2.0.35. Bumping up major version because Dapper introduced a slight breaking change in version 2.0.4.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
3.0.0 364 6/21/2020
2.1.0 50,037 4/1/2019
2.0.2 2,428 2/22/2019
2.0.1 806 12/14/2018
1.0.2 773 10/21/2018
1.0.2-alpha 194 10/20/2018
1.0.1 204 10/19/2018
1.0.0 215 10/11/2018