Кто-нибудь знает, почему Dapper возвращает int из .Execute(...)?
Я не могу найти этот документ где-нибудь.
Ответ 1
Целое число представляет количество строк, на которые повлиял ваш запрос.
Он возвращает целое число, поэтому вы знаете, работал ли ваш запрос. Если нуль возвращается, и вы ожидали, что что-то изменилось, вы знаете, что есть проблема.
Ответ 2
Потому что DbCommand.ExecuteNonQuery (который Dapper использует внутренне, без сомнения) возвращает int для количества затронутых строк. Зачем? Потому что он более или менее свободен, и это единственное, что вы можете разумно вернуть для общего INSERT или UPDATE.