Bastante utilizado em cenários que necessitam de uma performance maior no acesso à bases de dados relacionais, o Dapper é um micro-ORM que pode ser utilizando em aplicações baseadas no .NET Full e no .NET Core.
Já abordei, inclusive, o uso deste framework em dois artigos:
- Dapper: exemplos de utilização em ASP.NET Core e .NET Full
- Dapper: relacionamentos Um-para-Um e Um-para-Muitos (exemplos em ASP.NET Core)
O Dapper também foi um dos assuntos em um hangout que realizamos recentemente no Canal .NET, no qual se discutiu a utilização de outras soluções, como Entity Framework e NHibernate:
Neste novo artigo, trago todos os exemplos que abordei anteriormente em artigos e palestras, com as aplicações correspondentes, devidamente convertidas para o .NET Core 2.0 e o ASP.NET Core 2.0. As fontes foram disponibilizados no GitHub: https://github.com/renatogroffe/Dapper-DotNetCore2
Ao acessar o repositório Dapper-DotNetCore2, você encontrará os seguintes projetos:
- ExemploDapperContrib: API REST que faz uso do framework Dapper.Contrib, uma extensão do Dapper que facilita a implementação de operações de CRUD (inclusão, alteração, exclusão e leitura de registros);
- ExemploInserts: Console Application que demonstra o uso de stored procedures com o Dapper;
- ExemploJsonSqlServer: API REST que faz uso do suporte a JSON presente desde o SQL Server 2016;
- ExemploMultiMapping: API REST que demonstra a implementação de relacionamentos um-para-um com Dapper;
- ExemploOneToMany: API REST em que se fez uso do Dapper e do package Slapper.AutoMapper para a implementação de relacionamentos um-para-muitos;
- ExemploUpdateTransactions: Console Application que demonstra o uso de transações com Dapper;
- ExemplosGerais: API REST com diversos exemplos de utilização do Dapper na consulta de dados (incluindo tabelas, views e stored procedures);
- Scripts: contém os arquivos com scripts para criação das estruturas utilizadas pelos demais projetos.