c# .net timeout dapper

c# - ¿Cómo ajustar CommandTimeout en Dapper.NET?



(2)

Estoy tratando de ejecutar copias de seguridad de SQL a través de un procedimiento almacenado a través de Dapper (el resto de mi aplicación usa Dapper, así que prefiero mantener esta porción ejecutándose a través de él también). Funciona perfectamente hasta que CommandTimeout se active.

using (var c = SqlConnection(connstring)) { c.Open(); var p = new DynamicParameters(); // fill out p c.Execute("xp_backup_database", p, commandType: CommandType.StoredProcedure); }

La única configuración de CommandTimeout que conozco está en SqlCommand. ¿Hay alguna manera de configurar esto a través de Dapper?


Ejemplo de pregunta original con respuesta aceptada, en caso de que alguien lo quiera. (El tiempo de espera se establece en 60 segundos):

using (var c = SqlConnection(connstring)) { c.Open(); var p = new DynamicParameters(); // fill out p c.Execute("xp_backup_database", p, commandTimeout: 60, commandType: CommandType.StoredProcedure); }


Sí, hay múltiples versiones de la función Ejecutar. Uno (o más) de ellos contiene los parámetros commandTimeout:

public static int Execute(this IDbConnection cnn, string sql, dynamic param = null, IDbTransaction transaction = null, int? commandTimeout = null, CommandType? commandType = null)

Tomado de SqlMapper.cs