Dapper может передавать параметры запроса как анонимные объекты и поддерживает любой поставщик данных ADO.NET. при выполнении следующего запроса к драйверам Sybase 15 ADO.NET:
using (var connection = new AseConnection("..."))
{
connection.Open();
var results = connection.Query(
"dbo.sp_columns", new { table_name = "dbo.sysusers"},
commandType: CommandType.StoredProcedure);
}
... возникает следующая ошибка:
Sybase.Data.AseClient.AseException: Procedure sp_columns expects parameter @table_name, which was not supplied.
at Sybase.Data.AseClient.AseCommand.ᜁ(Int32 A_0)
at Sybase.Data.AseClient.AseCommand.ᜄ()
at Sybase.Data.AseClient.AseCommand.ᜀ(CommandBehavior A_0)
at Sybase.Data.AseClient.AseCommand.System.Data.IDbCommand.ExecuteReader()
at Dapper.SqlMapper.d__13`1.MoveNext() in SqlMapper.cs: line 579
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList(IEnumerable`1 source)
at Dapper.SqlMapper.Query(IDbConnection cnn, String sql, Object param, IDbTransaction transaction, Boolean buffered, Nullable`1 commandTimeout, Nullable`1 commandType) in SqlMapper.cs: line 536
Изменение его на Dapper DynamicParameters
, установленное с "@table_name", также не работает ' t работает.
Как передать строго типизированные параметры в Sybase с помощью Dapper?