public static void Update <T>(this ISqlConnectionProvider sqlConnectionProvider, T objectToUpdate, Expression <Func <T, object> > keyProperties = null, string tableName = null, string schemaName = null, bool processColumnNames = true) { tableName = SqlTextFunctions.GetTableName(objectToUpdate.GetType(), tableName, schemaName); using (var myConnection = sqlConnectionProvider.ToSqlConnection()) { using (var myCommand = new SqlCommand { Connection = myConnection }) { var setClauseProperties = SqlClrHelpers.GetRelevantPropertyInfos(objectToUpdate, null); var whereClauseProperties = SqlClrHelpers.GetPropertiesFromObject(objectToUpdate, keyProperties); SqlTextFunctions.UnUnderscoreColumnNames = processColumnNames; BuildOutUpdateCommand(objectToUpdate, tableName, setClauseProperties, whereClauseProperties, myCommand, processColumnNames); SqlTextFunctions.UnUnderscoreColumnNames = true; myConnection.Open(); SqlLogger.LogSqlCommand(myCommand); myCommand.ExecuteNonQuery(); myConnection.Close(); } } }
private static SqlDataReader GetDataReaderFromQuery(ISqlConnectionProvider sqlConnectionProvider, string sqlQuery) { var connection = sqlConnectionProvider.ToSqlConnection(); connection.Open(); var query = new SqlCommand(sqlQuery, connection); return(query.ExecuteReader()); }
public static void ExecuteNonDapper(this ISqlConnectionProvider connectionProvider, string sqlCommand) { var connection = connectionProvider.ToSqlConnection(); connection.Open(); var command = new SqlCommand(sqlCommand, connection); command.ExecuteNonQuery(); connection.Dispose(); }
public static T ExecuteScalar <T>(this ISqlConnectionProvider connectionProvider, string sqlCommand) { var connection = connectionProvider.ToSqlConnection(); connection.Open(); var command = new SqlCommand(sqlCommand, connection); var result = ConvertFromDBVal <T>(command.ExecuteScalar()); connection.Dispose(); return(result); }
public static void Delete <T>(this ISqlConnectionProvider sqlConnectionProvider, T objToDelete, Expression <Func <T, object> > keyProperties = null, string tableName = null, string schemaName = null, bool processColumnNames = true) { tableName = SqlTextFunctions.GetTableName(objToDelete.GetType(), tableName, schemaName); using (var myConnection = sqlConnectionProvider.ToSqlConnection()) { using (var myCommand = new SqlCommand() { Connection = myConnection }) { SqlTextFunctions.UnUnderscoreColumnNames = processColumnNames; BuildOutMyCommand(objToDelete, keyProperties, tableName, myCommand); SqlTextFunctions.UnUnderscoreColumnNames = true; myConnection.Open(); SqlLogger.LogSqlStatement(myCommand.CommandText); myCommand.ExecuteNonQuery(); myConnection.Close(); } } }