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

Вид: 107092|Ответ: 17

[Источник] Фреймворк ORM Dapper прост в использовании

[Скопировать ссылку]
Опубликовано 29.12.2020 11:58:20 | | | |
Хотя я ненавижу писать SQL-операторы, иногда мне приходится использовать Dapper для простых операций с базой данных, что лучше, чем просто инкапсулировать dbhelper.

Dapper определяет, существуют ли данные

Dapper выполняет операцию обновления



Dapper помещает результаты запроса в DataTable

Вставка Dapper

Например:

Действия Dapper query







Предыдущий:Оптимизированная производительность фрагментация индекса SQL Server
Следующий:SQL Server использует запятые для разделения строк
 Хозяин| Опубликовано 27.01.2021 10:23:38 |
Dapper реализует оптимистичные замки

Добавьте поле RowVersion в таблицу базы данных, тип — это временная метка, а принцип: при обновлении используйте RowVersion как условие where, как показано на рисунке ниже:



Код таков:





 Хозяин| Опубликовано 10.12.2021 14:37:28 |
Dapper динамически передаёт параметры

Когда dapper выполняет команду динамической передачи параметров, я начинаю передавать объект как параметр через строку JSON, и ошибка выглядит следующим образом:

Ошибка вывода: Перечислимая последовательность параметров (массивы, списки и т..) в данном контексте не допускается.

Динамические параметры можно передавать следующим образом:



 Хозяин| Опубликовано 04.12.2025 16:55:34 |
Необработанное исключение. System.Data.ConstraintException: Не удалось включить ограничения. Одна или несколько строк содержат значения, нарушающие ограничения по ненулевому, уникальному или иностранному ключу.
   на System.Data.DataTable.EnableConstraints()
   при System.Data.DataTable.set_EnforceConstraints(булевое значение)
   на сайте System.Data.DataTable.EndLoadData()
   на System.Data.Common.DataAdapter.FillFromReader(DataSet dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)
   в System.Data.Common.DataAdapter.Fill (DataTable[] dataTables, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
   в System.Data.DataTable.Load (IDataReader reader, LoadOption loadOption, FillErrorEventHandler errorHandler errorHandler)

решение
 Хозяин| Опубликовано 27.01.2021 16:59:36 |
Dapper Select Count(*)

Получите общее количество фрагментов данных, код выглядит следующим образом:



 Хозяин| Опубликовано 28.01.2021 13:10:05 |
стильный, как нечеткий запрос



 Хозяин| Опубликовано 26.03.2021 14:46:40 |
Даппер в обновлении

 Хозяин| Опубликовано 14.07.2021 15:09:24 |
Используйте Dapper для возврата нескольких наборов результатов




Примечание: при чтении таблицы она должна быть в порядке возврата вышеуказанной таблицы. Например, сначала должна быть возвращена вышеуказанная таблица Users, иначе данные не возвращаются
 Хозяин| Опубликовано 27.12.2021 22:10:02 |
Microsoft представляет Microsoft.Data.SqlClient в качестве альтернативы System.Data.SqlClient
Опубликовано 28.12.2021 14:26:29 |
Когда тебя используют — учитесь этому
Опубликовано 17.01.2022 17:33:51 |
В моей прошлой компании я изменил весь слой данных компании на элегантный. Это очень приятно, потому что почти все мои коллеги в компании, которые раньше использовали ado.net, набирали SQL-операторы, и после этого всё шло очень плавно.
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com