public static void SqlRecordAppUse() { try { SqlConnection sqlConnection = DatabaseOperations.SqlOpenConnection(DatabaseOperations.adminDataSqlConnectionString); DataTable dt = sqlConnection.GetSchema("Tables"); List <string> existingTables = new List <string>(); foreach (DataRow row in dt.Rows) { string tableName = (string)row[2]; existingTables.Add(tableName); } if (existingTables.Contains(Properties.Settings.Default.SqlAppUseTableName)) { SqlBulkCopyOptions options = SqlBulkCopyOptions.Default; using (SqlBulkCopy s = new SqlBulkCopy(sqlConnection, options, null)) { s.DestinationTableName = "[" + Properties.Settings.Default.SqlAppUseTableName + "]"; foreach (DataColumn appColumn in BARevitTools.Application.thisApp.appUseDataTable.Columns) { s.ColumnMappings.Add(appColumn.ToString(), appColumn.ToString()); } s.WriteToServer(BARevitTools.Application.thisApp.appUseDataTable); } } else { SqlCommand sqlCreateTable = new SqlCommand("CREATE TABLE " + Properties.Settings.Default.SqlAppUseTableName + " (AppGUID uniqueidentifier, AppButton varchar(255), AppUser varchar(255), AppDate datetime)", sqlConnection); sqlCreateTable.ExecuteNonQuery(); SqlBulkCopyOptions options = SqlBulkCopyOptions.Default; using (SqlBulkCopy s = new SqlBulkCopy(sqlConnection, options, null)) { s.DestinationTableName = "[" + Properties.Settings.Default.SqlAppUseTableName + "]"; foreach (DataColumn appColumn in BARevitTools.Application.thisApp.appUseDataTable.Columns) { s.ColumnMappings.Add(appColumn.ToString(), appColumn.ToString()); } s.WriteToServer(BARevitTools.Application.thisApp.appUseDataTable); } } DatabaseOperations.SqlCloseConnection(sqlConnection); } catch {; } }
public static void SqlLogWriter(string writtenTableName) { try { SqlConnection sqlConnection = DatabaseOperations.SqlOpenConnection(DatabaseOperations.adminDataSqlConnectionString); DataTable dt = sqlConnection.GetSchema("Tables"); List <string> existingTables = new List <string>(); foreach (DataRow row in dt.Rows) { string tableName = (string)row[2]; existingTables.Add(tableName); } if (existingTables.Contains("BARevitTools_SQLWriterLog")) { string commandString = "INSERT INTO [BARevitTools_SQLWriterLog] (UserName, TableName, WriteDate) VALUES (@userName, @tableName, @dateTime)"; using (SqlCommand sqlInsert = new SqlCommand(commandString, sqlConnection)) { sqlInsert.Parameters.AddWithValue("@userName", Environment.UserName); sqlInsert.Parameters.AddWithValue("@tableName", writtenTableName); sqlInsert.Parameters.AddWithValue("@dateTime", DateTime.Now); sqlInsert.ExecuteNonQuery(); } } else { SqlCommand sqlCreateTable = new SqlCommand("CREATE TABLE BARevitTools_SQLWriterLog (UserName varchar(255), TableName varchar(255), WriteDate datetime)", sqlConnection); sqlCreateTable.ExecuteNonQuery(); string commandString = "INSERT INTO [BARevitTools_SQLWriterLog] (UserName, TableName, WriteDate) VALUES (@userName, @tableName, @dateTime)"; using (SqlCommand sqlInsert = new SqlCommand(commandString, sqlConnection)) { sqlInsert.Parameters.AddWithValue("@userName", Environment.UserName); sqlInsert.Parameters.AddWithValue("@tableName", writtenTableName); sqlInsert.Parameters.AddWithValue("@dateTime", DateTime.Now); sqlInsert.ExecuteNonQuery(); } } DatabaseOperations.SqlCloseConnection(sqlConnection); } catch {; } }