mirror of
				https://github.com/nsnail/FreeSql.git
				synced 2025-11-04 17:20:49 +08:00 
			
		
		
		
	- 修复 BulkCopy 与线程事务未传播的 bug;#962
This commit is contained in:
		@@ -50,10 +50,11 @@ public static class FreeSqlMySqlConnectorGlobalExtensions
 | 
			
		||||
        {
 | 
			
		||||
            if (insert.InternalConnection == null && insert.InternalTransaction == null)
 | 
			
		||||
            {
 | 
			
		||||
                using (var conn = insert.InternalOrm.Ado.MasterPool.Get())
 | 
			
		||||
                {
 | 
			
		||||
                    writeToServer(new MySqlBulkCopy(conn.Value as MySqlConnection));
 | 
			
		||||
                }
 | 
			
		||||
                if (insert._orm.Ado?.TransactionCurrentThread != null)
 | 
			
		||||
                    writeToServer(new MySqlBulkCopy(insert._orm.Ado.TransactionCurrentThread.Connection as MySqlConnection, insert._orm.Ado?.TransactionCurrentThread as MySqlTransaction));
 | 
			
		||||
                else
 | 
			
		||||
                    using (var conn = insert.InternalOrm.Ado.MasterPool.Get())
 | 
			
		||||
                        writeToServer(new MySqlBulkCopy(conn.Value as MySqlConnection));
 | 
			
		||||
            }
 | 
			
		||||
            else if (insert.InternalTransaction != null)
 | 
			
		||||
            {
 | 
			
		||||
@@ -109,10 +110,11 @@ public static class FreeSqlMySqlConnectorGlobalExtensions
 | 
			
		||||
        {
 | 
			
		||||
            if (insert.InternalConnection == null && insert.InternalTransaction == null)
 | 
			
		||||
            {
 | 
			
		||||
                using (var conn = insert.InternalOrm.Ado.MasterPool.Get())
 | 
			
		||||
                {
 | 
			
		||||
                    await writeToServer(new MySqlBulkCopy(conn.Value as MySqlConnection));
 | 
			
		||||
                }
 | 
			
		||||
                if (insert._orm.Ado?.TransactionCurrentThread != null)
 | 
			
		||||
                    await writeToServer(new MySqlBulkCopy(insert._orm.Ado.TransactionCurrentThread.Connection as MySqlConnection, insert._orm.Ado?.TransactionCurrentThread as MySqlTransaction));
 | 
			
		||||
                else
 | 
			
		||||
                    using (var conn = insert.InternalOrm.Ado.MasterPool.Get())
 | 
			
		||||
                        await writeToServer(new MySqlBulkCopy(conn.Value as MySqlConnection));
 | 
			
		||||
            }
 | 
			
		||||
            else if (insert.InternalTransaction != null)
 | 
			
		||||
            {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user