public static void EnumerateResults( string connectionString, string commandText, int commandTimeoutSecs, ResultsSetHandler handler, SqlParameter[] sqlParams = null) { using (var c = CreateConnection(connectionString)) { EnumerateResults(c, null, commandText, commandTimeoutSecs, handler, sqlParams); } }
public static void EnumerateResults( TransactionContext tc, string commandText, int commandTimeoutSecs, ResultsSetHandler handler, SqlParameter[] sqlParams = null) { if (!string.IsNullOrEmpty(commandText)) { if (tc.Status == TransactionStatus.NotStarted) { tc.Begin(); } EnumerateResults(tc.Connection, tc.Transaction, commandText, commandTimeoutSecs, handler, sqlParams); } }
public static void GetSingleResult( string connectionString, string commandText, int commandTimeoutSecs, ResultsSetHandler handler, SqlParameter[] sqlParams = null) { using (var c = CreateConnection(connectionString)) using (var cmd = c.CreateCommand()) { cmd.CommandTimeout = commandTimeoutSecs; cmd.CommandText = commandText; try { if (sqlParams != null) { cmd.Parameters.AddRange(sqlParams); } using (var r = cmd.ExecuteReader()) { if (r.Read()) { handler(r); if (r.Read()) { throw new ApplicationException($"More than 1 result row found in GetSingleResult! - {commandText}"); } } } } catch (Exception ex) { _log.Error("Error getting results set", ex); _log.Error(cmd.CommandText); throw; } } }
public static void EnumerateResults( SqlConnection conn, SqlTransaction tran, string commandText, int commandTimeoutSecs, ResultsSetHandler handler, SqlParameter[] sqlParams = null) { using (var cmd = conn.CreateCommand()) { if (tran != null) { cmd.Transaction = tran; } cmd.CommandTimeout = commandTimeoutSecs; cmd.CommandText = commandText; try { if (sqlParams != null) { cmd.Parameters.AddRange(sqlParams); } using (var r = cmd.ExecuteReader()) { while (r.Read()) { handler(r); } } } catch (Exception ex) { _log.Error("Error getting results set", ex); _log.Error(cmd.CommandText); throw; } } }