Первые два примера просто не делают никакого «реального» доступа к данным, возможно, для простоты.
Да, используется соединение (connection.Query(...)
), но только потому, что это единственный способ вызвать методы Dapper (потому что они расширяют интерфейс IDbConnection).
Что-то вроде этого - совершенно правильный код SQL:
select 'foo', 1
... он просто «генерирует» свой результат на лету, фактически не выбирая ничего из таблицы.
Пример с параметрами и анонимным типом:
var dog = connection.Query<Dog>("select Age = @Age, Id = @Id", new { Age = (int?)null, Id = guid });
)
... просто показывает способность Даппера передавать параметры SQL в виде анонимного типа .
Опять же, запрос на самом деле ничего не выбирает из таблицы, возможно, для простоты.