- 修复 Insert/Update 大批量操作分批执行时,如果外部使用了 Ado.Transaction,没有使用线程事务对象,而是创建了新事务的 bug;

This commit is contained in:
28810 2019-07-04 14:13:15 +08:00
parent b04a4e7266
commit 619c57c254
12 changed files with 40 additions and 10 deletions

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net45</TargetFrameworks> <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql 扩展包,可实现【延时加载】属性.</Description> <Description>FreeSql 扩展包,可实现【延时加载】属性.</Description>

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net45</TargetFrameworks> <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql is the most convenient ORM in dotnet. It supports Mysql, Postgresql, SqlServer, Oracle and Sqlite.</Description> <Description>FreeSql is the most convenient ORM in dotnet. It supports Mysql, Postgresql, SqlServer, Oracle and Sqlite.</Description>

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net45</TargetFrameworks> <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql Implementation of General Repository, Support MySql/SqlServer/PostgreSQL/Oracle/Sqlite, and read/write separation、and split table.</Description> <Description>FreeSql Implementation of General Repository, Support MySql/SqlServer/PostgreSQL/Oracle/Sqlite, and read/write separation、and split table.</Description>
<PackageProjectUrl>https://github.com/2881099/FreeSql/wiki/Repository</PackageProjectUrl> <PackageProjectUrl>https://github.com/2881099/FreeSql/wiki/Repository</PackageProjectUrl>

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net45</TargetFrameworks> <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql is the most convenient ORM in dotnet. It supports Mysql, Postgresql, SqlServer, Oracle and Sqlite.</Description> <Description>FreeSql is the most convenient ORM in dotnet. It supports Mysql, Postgresql, SqlServer, Oracle and Sqlite.</Description>

View File

@ -132,6 +132,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)
@ -180,6 +183,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)
@ -228,6 +234,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)
@ -278,6 +287,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)
@ -328,6 +340,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)
@ -376,6 +391,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)

View File

@ -132,6 +132,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)
@ -175,6 +178,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)
@ -218,6 +224,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)
@ -261,6 +270,9 @@ namespace FreeSql.Internal.CommonProvider
ClearData(); ClearData();
return ret; return ret;
} }
if (_transaction == null)
this.WithTransaction(_orm.Ado.TransactionCurrentThread);
if (_transaction != null) if (_transaction != null)
{ {
for (var a = 0; a < ss.Length; a++) for (var a = 0; a < ss.Length; a++)

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net452</TargetFrameworks> <TargetFrameworks>netstandard2.0;net452</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 MySql 5.6</Description> <Description>FreeSql 数据库实现,基于 MySql 5.6</Description>

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net45</TargetFrameworks> <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 MySql 5.6</Description> <Description>FreeSql 数据库实现,基于 MySql 5.6</Description>

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net45</TargetFrameworks> <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 Oracle 11</Description> <Description>FreeSql 数据库实现,基于 Oracle 11</Description>

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net45</TargetFrameworks> <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 PostgreSQL 9.5</Description> <Description>FreeSql 数据库实现,基于 PostgreSQL 9.5</Description>

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net451</TargetFrameworks> <TargetFrameworks>netstandard2.0;net451</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 SqlServer 2005+并根据版本适配分页方法row_number 或 offset fetch next</Description> <Description>FreeSql 数据库实现,基于 SqlServer 2005+并根据版本适配分页方法row_number 或 offset fetch next</Description>

View File

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFrameworks>netstandard2.0;net45</TargetFrameworks> <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>
<Version>0.7.4</Version> <Version>0.7.5</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild> <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Authors>YeXiangQin</Authors> <Authors>YeXiangQin</Authors>
<Description>FreeSql 数据库实现,基于 Sqlite 3.0</Description> <Description>FreeSql 数据库实现,基于 Sqlite 3.0</Description>