/// <summary> /// Does the database operation on the database server. /// </summary> /// <param name="dataFile">The Xml file that is to be used on the database.</param> /// <param name="schemaFile">The Xsd file that is to be used on the database.</param> /// <param name="dbOperationFlag">The database operation to perform on the database server</param> private void PerformDbOperation(string dataFile, string schemaFile, DbOperationFlag dbOperationFlag) { var sqlUnitTest = new SqlUnitTest(_connectionString); sqlUnitTest.ReadXmlSchema(schemaFile); sqlUnitTest.ReadXml(dataFile); sqlUnitTest.PerformDbOperation(dbOperationFlag); }
internal SqlDbUnitTest SetUpDatabase(string connectionString, Stream xsdStream, Stream dataStream, DbOperationFlag operation) { Assert.IsNotNull(xsdStream); Assert.IsNotNull(dataStream); SqlDbUnitTest dbUnitTest = new SqlDbUnitTest(connectionString); dbUnitTest.ReadXmlSchema(xsdStream); dbUnitTest.ReadXml(dataStream); dbUnitTest.PerformDbOperation(operation); return dbUnitTest; }
protected INDbUnitTest SetUpDatabase(DbOperationFlag operation, Stream datasetStream = null) { Assert.IsNotNull(DatabaseSchema); SetUpNhibernateSession(); INDbUnitTest dbUnitTest = new SqlDbUnitTest(this.ConnectionString); dbUnitTest.ReadXmlSchema(this.DatabaseSchema); if(datasetStream != null) dbUnitTest.ReadXml(datasetStream); dbUnitTest.PerformDbOperation(operation); return dbUnitTest; }
protected INDbUnitTest SetUpDatabase(DbOperationFlag operation, Stream datasetStream = null) { Assert.IsNotNull(DatabaseSchema); SetUpNhibernateSession(); INDbUnitTest dbUnitTest = new SqlDbUnitTest(this.ConnectionString); dbUnitTest.ReadXmlSchema(this.DatabaseSchema); if (datasetStream != null) { dbUnitTest.ReadXml(datasetStream); } dbUnitTest.PerformDbOperation(operation); return(dbUnitTest); }
public void PerformDbOperation(DbOperationFlag dbOperationFlag) { checkInitialized(); if (dbOperationFlag == DbOperationFlag.None) { return; } IDbCommandBuilder dbCommandBuilder = GetDbCommandBuilder(); IDbOperation dbOperation = GetDbOperation(); IDbTransaction dbTransaction = null; IDbConnection dbConnection = dbCommandBuilder.Connection; try { if (dbConnection.State != ConnectionState.Open) { dbConnection.Open(); } dbTransaction = dbConnection.BeginTransaction(); OperationEventArgs args = new OperationEventArgs(); args.DbTransaction = dbTransaction; if (null != PreOperation) { PreOperation(this, args); } switch (dbOperationFlag) { case DbOperationFlag.Insert: { dbOperation.Insert(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.InsertIdentity: { dbOperation.InsertIdentity(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.Delete: { dbOperation.Delete(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.DeleteAll: { dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.Refresh: { dbOperation.Refresh(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.Update: { dbOperation.Update(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.CleanInsert: { dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); dbOperation.Insert(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.CleanInsertIdentity: { dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); dbOperation.InsertIdentity(_dataSet, dbCommandBuilder, dbTransaction); break; } } if (null != PostOperation) { PostOperation(this, args); } dbTransaction.Commit(); } catch (Exception) { if (dbTransaction != null) { dbTransaction.Rollback(); } throw; } finally { if (!_passedconnection) { if (ConnectionState.Open == dbConnection.State) { dbConnection.Close(); } } } }
public void PerformDbOperation(DbOperationFlag dbOperationFlag) { checkInitialized(); if (dbOperationFlag == DbOperationFlag.None) { return; } IDbCommandBuilder dbCommandBuilder = GetDbCommandBuilder(); IDbOperation dbOperation = GetDbOperation(); IDbTransaction dbTransaction = null; IDbConnection dbConnection = dbCommandBuilder.Connection; try { if (dbConnection.State != ConnectionState.Open) { dbConnection.Open(); } dbTransaction = dbConnection.BeginTransaction(); OperationEventArgs args = new OperationEventArgs(); args.DbTransaction = dbTransaction; if (null != PreOperation) { PreOperation(this, args); } switch (dbOperationFlag) { case DbOperationFlag.Insert: { dbOperation.Insert(_dataSet, dbCommandBuilder, dbTransaction); break; } //case DbOperationFlag.InsertIdentity: // { // dbOperation.InsertIdentity(_dataSet, dbCommandBuilder, dbTransaction); // break; // } //case DbOperationFlag.Delete: // { // dbOperation.Delete(_dataSet, dbCommandBuilder, dbTransaction); // break; // } case DbOperationFlag.DeleteAll: { dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); break; } //case DbOperationFlag.Refresh: // { // dbOperation.Refresh(_dataSet, dbCommandBuilder, dbTransaction); // break; // } //case DbOperationFlag.Update: // { // dbOperation.Update(_dataSet, dbCommandBuilder, dbTransaction); // break; // } //case DbOperationFlag.CleanInsert: // { // dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); // dbOperation.Insert(_dataSet, dbCommandBuilder, dbTransaction); // break; // } //case DbOperationFlag.CleanInsertIdentity: // { // dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); // dbOperation.InsertIdentity(_dataSet, dbCommandBuilder, dbTransaction); // break; // } } if (null != PostOperation) { PostOperation(this, args); } dbTransaction.Commit(); } catch (Exception) { if (dbTransaction != null) { dbTransaction.Rollback(); } throw; } finally { if (dbTransaction != null) { dbTransaction.Dispose(); } //only close and release the connection if not externally-managed if (!ConnectionManager.HasExternallyManagedConnection) { if (ConnectionState.Open == dbConnection.State) { dbConnection.Close(); } ConnectionManager.ReleaseConnection(); } } }
private void ExecuteDatabaseOperation(string datasetFile, DbOperationFlag operation) { _connection.ReadXmlSchema(DatasetsDatasetXsd); _connection.ReadXml(datasetFile); _connection.PerformDbOperation(operation); }
public void PerformDbOperation(DbOperationFlag dbOperationFlag) { checkInitialized(); if (dbOperationFlag == DbOperationFlag.None) { return; } IDbCommandBuilder dbCommandBuilder = GetDbCommandBuilder(); IDbOperation dbOperation = GetDbOperation(); DbTransaction dbTransaction = null; DbConnection dbConnection = dbCommandBuilder.Connection; using (new OpenConnectionGuard(dbConnection, ConnectionManager.HasExternallyManagedConnection)) { try { dbTransaction = dbConnection.BeginTransaction(); OperationEventArgs args = new OperationEventArgs(); args.DbTransaction = dbTransaction; if (null != PreOperation) { PreOperation(this, args); } switch (dbOperationFlag) { case DbOperationFlag.Insert: { dbOperation.Insert(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.InsertIdentity: { dbOperation.InsertIdentity(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.Delete: { dbOperation.Delete(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.DeleteAll: { dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.Refresh: { dbOperation.Refresh(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.Update: { dbOperation.Update(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.CleanInsert: { dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); dbOperation.Insert(_dataSet, dbCommandBuilder, dbTransaction); break; } case DbOperationFlag.CleanInsertIdentity: { dbOperation.DeleteAll(_dataSet, dbCommandBuilder, dbTransaction); dbOperation.InsertIdentity(_dataSet, dbCommandBuilder, dbTransaction); break; } } if (null != PostOperation) { PostOperation(this, args); } dbTransaction.Commit(); } catch (Exception) { if (dbTransaction != null) { dbTransaction.Rollback(); } throw; } finally { if (dbTransaction != null) { dbTransaction.Dispose(); } } } }