Pull to refresh
3
10
Igor E.@Ie51

User

Send message

ну в целом так - слишком много хэндлеров, сложности со спецификой Enum в некоторых кейсах, атрибуты переименования и игнорирования, проблемы с приведением измененных типов. Можно было сделать через TypHandler, но появилось бы много неочевидной магии и сложнее.

Часть статьи описывает причину.

В Dapper

var rows = await dbTransaction.QueryAsync(query, commandTimeout: context.CommandTimeout)

rows будут IEnumerable<dynamic> с именованием свойств 1:1 как вернула БД.

вот эти динамические объекты и маппятся на strong type.

Грубое сравнение рефлексии с Dynamitey тут: UsageReallyLateBinding · ekonbenefits/dynamitey Wiki · GitHub

в самом конце есть табличка сравнивающая CacheableInvocation с рефлексией, к тому же это просто менее громоздко синтаксически.

Information

Rating
676-th
Location
Россия
Registered
Activity

Specialization

Бэкенд разработчик, Разработчик баз данных
Ведущий
C#
.NET Core
Golang
Firebird
PostgreSQL
Microsoft SQL Server
MongoDB
Высоконагруженные системы