using System; using System.Data.SqlClient; namespace DataAccessLayer { public static class SqlCommandExtensions { public static int ExecuteNonQueryWithLogging(this SqlCommand command) { var startTime = DateTime.Now; var result = command.ExecuteNonQuery(); var executionTime = (long)(DateTime.Now - startTime).TotalMilliseconds; SqlLogging.LogCommand(command, executionTime); return result; } public static SqlDataReader ExecuteReaderWithLogging(this SqlCommand command) { var startTime = DateTime.Now; var result = command.ExecuteReader(); var executionTime = (long)(DateTime.Now - startTime).TotalMilliseconds; SqlLogging.LogCommand(command, executionTime); return result; } public static object ExecuteScalarWithLogging(this SqlCommand command) { var startTime = DateTime.Now; var result = command.ExecuteScalar(); var executionTime = (long)(DateTime.Now - startTime).TotalMilliseconds; SqlLogging.LogCommand(command, executionTime); return result; } } }