Расширения Dapper (или вообще любой ORM) поддерживают генерацию автоматического запроса. Для этого им нужно знать имя таблицы, по которой должен быть сгенерирован запрос. Они узнают об этом, посмотрев тип сущности generic c и связав ее с выполненным отображением.
Вы пытаетесь вставить тип object
. ORM не может узнать, для какой таблицы должен быть сгенерирован запрос. Вот почему то, что вы пытаетесь сделать, невозможно.
Это не работает, несмотря на то, что PersonEntity
сопоставления зарегистрированы с OrmConfiguration
Опять же, ORM не может знать, что ваш object
равен PersonEntity
. Вы нанесли на карту PersonEntity
и передали object
.
Чтобы это произошло, разыграйте object
с точной сущностью:
connnection.Insert(person as PersonEntity);
Пока Insert
, ваш код знаю, что вы вставляете. Простое приведение к указанному типу c должно решить проблему.
Как уже упоминалось в документе , вы можете использовать SQL Компоновщик в инструменте. Я никогда не использовал инструментарий, поэтому я не знаю, поможет ли это вам; просто предлагаю посмотреть документацию.
Полезный SQL построитель и средство форматирования операторов, которое можно использовать, даже если вам не нужны функции CRUD этой библиотеки.