Описание тега dapper

Dapper - это микро-ORM для.NET, разработанный и используемый командой stackru, основной целью которого является чистая производительность.

Dapper - это микро-ORM, предлагающий основные услуги параметризации и материализации, но (по замыслу) не весь спектр услуг, который вы могли бы ожидать от полной ORM, такой как LINQ-to-SQL или Entity Framework. Вместо этого он фокусируется на том, чтобы сделать материализацию максимально быстрой, без накладных расходов со стороны таких вещей, как менеджеры идентификации - просто "запустите этот запрос и предоставьте мне (типизированные) данные".

Однако он сохраняет поддержку материализации нетривиальных структур данных с горизонтальной (объединенные данные в единую сетку) и вертикальной (несколько сеток) обработкой.

Вполне возможно, что это самый быстрый материализатор, доступный для.NET и доступный здесь: https://github.com/StackExchange/dapper-dot-net

Начало работы с Dapper

Dapper состоит из одного файла: SqlMapper.cs (или SqlMapperAsync.cs для.NET 4.5, если вам нравится асинхронный режим). Вы можете либо включить файл в свой проект, как есть. Или установите через nuget.

Вот видео с простым примером.

Простой пример Hello World

using Dapper;
//...
using (var connection = new SqlConnection(myConnectionString))
{
  connection.Open();
  var posts = connection.Query<Post>("select * from Posts");

  //... do stuff with posts
}

CRUD операции

Dapper обеспечивает минимальный интерфейс между вашей базой данных и вашим приложением. Несмотря на то, что интерфейс минимален, он по-прежнему поддерживает полный набор операций с базой данных. Создание, чтение, обновление, удаление полностью поддерживаются. Используете хранимые процедуры или нет.

Смотрите также:

Мульти картограф

Dapper позволяет автоматически разбивать одну строку на несколько объектов. Это удобно, когда вам нужно объединить столы.

Смотрите также:

Спектакль

Ключевой особенностью Dapper является производительность. По этой ссылке вы можете узнать о производительности сопоставления SELECT более 500 итераций.

Поддержка.NET Framework

Dapper лучше всего работает на.NET 4.0 или новее. Он использует динамические функции языка и дополнительные параметры. Вы также можете запустить Dapper на.NET 3.5. Нет известных портов, которые избегают генерации динамических методов. Нет известных портов для.NET 2.0.

Dapper также отлично работает в Mono.

Пакет Nuget

Dapper проще всего установить через пакет NuGet.

Install-Package Dapper

Установить

Dapper можно использовать после добавления ссылки на Dapper.dll к проекту

Расширения

Решение Dapper включает следующие расширения:

  • Dapper.Rainbow
  • Dapper.Contrib
  • Dapper.SqlBuilder

Сторонние расширения

Доступны некоторые расширения, разработанные сторонними разработчиками: