parece que hubo un ExecuteScalar en Dapper ...¿hay una ExecuteScalar en Dapper
Fue ExecuteScalar cambiado de nombre o eliminado?
¿Se puede lograr esto ahora con .Query o .Query < T>?
parece que hubo un ExecuteScalar en Dapper ...¿hay una ExecuteScalar en Dapper
Fue ExecuteScalar cambiado de nombre o eliminado?
¿Se puede lograr esto ahora con .Query o .Query < T>?
ExecuteScalar simplemente se añadió en 1,28: https://www.nuget.org/packages/Dapper
Me confundí un poco por esto, si entiendo esto correctamente, en la versión actual de Dapper (1.42 como el 8 de octubre de 2015) NO hay ejecución escalar. La funcionalidad se logra mediante el método LINQ Single(). ¿Derecha? – dotnetguy
1.42 todavía lo tiene. Utiliza el SqlCommand.ExecuteScalar() subyacente, que tiene un comportamiento diferente de .Single() y .First() (en particular, devolverá nulo si no vuelve ningún registro). Consulte https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executescalar(v=vs.110).aspx –
pude llamar ExecuteScalar < T> con la versión 1.42.0
public Boolean BeforeToday(DateTime dateInQuestion)
{
try
{
using (var conn = new SqlConnection(ConnectionString))
{
String sql = @"SELECT CONVERT(bit, CASE WHEN getdate() > @dateParameter THEN 1 ELSE 0 END) AS BeforeToday";
var result = conn.ExecuteScalar<Boolean>(sql, new { dateParameter = dateInQuestion });
return result;
}
}
catch (Exception)
{
return dateInQuestion < DateTime.Now;
}
}
En la versión 1.50.4 pude llamar connection.QuerySingle<int>(query,params)
Esta no es una respuesta completa. Recomiendo hacer un comentario cuando tengas el representante. –
La razón por la que nunca agregamos uno es simplemente: '.Single()' hace lo mismo. Investigamos las implementaciones subyacentes, etc., y no hay un beneficio real al agregar un método adicional. –
.Single() no está comenzando como un método de extensión Dapper. ¿Esto está en un método subyacente en el marco .net? – sgtz
Quiero decir: 'int value = conn.Query (sql, args) .Single();', o 'string value = conn.Query (sql, args) .Single();', etc –