From 619c57c254ed37ef2ddfcb2bd972fdf6d656fd5f Mon Sep 17 00:00:00 2001 From: 28810 <28810@YEXIANGQIN> Date: Thu, 4 Jul 2019 14:13:15 +0800 Subject: [PATCH] =?UTF-8?q?-=20=E4=BF=AE=E5=A4=8D=20Insert/Update=20?= =?UTF-8?q?=E5=A4=A7=E6=89=B9=E9=87=8F=E6=93=8D=E4=BD=9C=E5=88=86=E6=89=B9?= =?UTF-8?q?=E6=89=A7=E8=A1=8C=E6=97=B6=EF=BC=8C=E5=A6=82=E6=9E=9C=E5=A4=96?= =?UTF-8?q?=E9=83=A8=E4=BD=BF=E7=94=A8=E4=BA=86=20Ado.Transaction=EF=BC=8C?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E4=BD=BF=E7=94=A8=E7=BA=BF=E7=A8=8B=E4=BA=8B?= =?UTF-8?q?=E5=8A=A1=E5=AF=B9=E8=B1=A1=EF=BC=8C=E8=80=8C=E6=98=AF=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E4=BA=86=E6=96=B0=E4=BA=8B=E5=8A=A1=E7=9A=84=20bug?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FreeSql.Extensions.LazyLoading.csproj | 2 +- FreeSql.DbContext/FreeSql.DbContext.csproj | 2 +- FreeSql.Repository/FreeSql.Repository.csproj | 2 +- FreeSql/FreeSql.csproj | 2 +- .../Internal/CommonProvider/InsertProvider.cs | 18 ++++++++++++++++++ .../Internal/CommonProvider/UpdateProvider.cs | 12 ++++++++++++ .../FreeSql.Provider.MySql.csproj | 2 +- .../FreeSql.Provider.MySqlConnector.csproj | 2 +- .../FreeSql.Provider.Oracle.csproj | 2 +- .../FreeSql.Provider.PostgreSQL.csproj | 2 +- .../FreeSql.Provider.SqlServer.csproj | 2 +- .../FreeSql.Provider.Sqlite.csproj | 2 +- 12 files changed, 40 insertions(+), 10 deletions(-) diff --git a/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj b/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj index 81724648..ac4b783f 100644 --- a/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj +++ b/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj @@ -2,7 +2,7 @@ netstandard2.0;net45 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql 扩展包,可实现【延时加载】属性. diff --git a/FreeSql.DbContext/FreeSql.DbContext.csproj b/FreeSql.DbContext/FreeSql.DbContext.csproj index 8bd9afbd..99c37e9c 100644 --- a/FreeSql.DbContext/FreeSql.DbContext.csproj +++ b/FreeSql.DbContext/FreeSql.DbContext.csproj @@ -2,7 +2,7 @@ netstandard2.0;net45 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql is the most convenient ORM in dotnet. It supports Mysql, Postgresql, SqlServer, Oracle and Sqlite. diff --git a/FreeSql.Repository/FreeSql.Repository.csproj b/FreeSql.Repository/FreeSql.Repository.csproj index 26d817d8..acb5b2fd 100644 --- a/FreeSql.Repository/FreeSql.Repository.csproj +++ b/FreeSql.Repository/FreeSql.Repository.csproj @@ -2,7 +2,7 @@ netstandard2.0;net45 - 0.7.4 + 0.7.5 YeXiangQin FreeSql Implementation of General Repository, Support MySql/SqlServer/PostgreSQL/Oracle/Sqlite, and read/write separation、and split table. https://github.com/2881099/FreeSql/wiki/Repository diff --git a/FreeSql/FreeSql.csproj b/FreeSql/FreeSql.csproj index dd1cc070..5ef4f348 100644 --- a/FreeSql/FreeSql.csproj +++ b/FreeSql/FreeSql.csproj @@ -2,7 +2,7 @@ netstandard2.0;net45 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql is the most convenient ORM in dotnet. It supports Mysql, Postgresql, SqlServer, Oracle and Sqlite. diff --git a/FreeSql/Internal/CommonProvider/InsertProvider.cs b/FreeSql/Internal/CommonProvider/InsertProvider.cs index 9a2494f6..ee4a3d4b 100644 --- a/FreeSql/Internal/CommonProvider/InsertProvider.cs +++ b/FreeSql/Internal/CommonProvider/InsertProvider.cs @@ -132,6 +132,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) @@ -180,6 +183,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) @@ -228,6 +234,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) @@ -278,6 +287,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) @@ -328,6 +340,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) @@ -376,6 +391,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) diff --git a/FreeSql/Internal/CommonProvider/UpdateProvider.cs b/FreeSql/Internal/CommonProvider/UpdateProvider.cs index 01c03f51..80da28c1 100644 --- a/FreeSql/Internal/CommonProvider/UpdateProvider.cs +++ b/FreeSql/Internal/CommonProvider/UpdateProvider.cs @@ -132,6 +132,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) @@ -175,6 +178,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) @@ -218,6 +224,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) @@ -261,6 +270,9 @@ namespace FreeSql.Internal.CommonProvider ClearData(); return ret; } + if (_transaction == null) + this.WithTransaction(_orm.Ado.TransactionCurrentThread); + if (_transaction != null) { for (var a = 0; a < ss.Length; a++) diff --git a/Providers/FreeSql.Provider.MySql/FreeSql.Provider.MySql.csproj b/Providers/FreeSql.Provider.MySql/FreeSql.Provider.MySql.csproj index 5e7285af..18eb5909 100644 --- a/Providers/FreeSql.Provider.MySql/FreeSql.Provider.MySql.csproj +++ b/Providers/FreeSql.Provider.MySql/FreeSql.Provider.MySql.csproj @@ -2,7 +2,7 @@ netstandard2.0;net452 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql 数据库实现,基于 MySql 5.6 diff --git a/Providers/FreeSql.Provider.MySqlConnector/FreeSql.Provider.MySqlConnector.csproj b/Providers/FreeSql.Provider.MySqlConnector/FreeSql.Provider.MySqlConnector.csproj index 7b7b1100..0a3fd69b 100644 --- a/Providers/FreeSql.Provider.MySqlConnector/FreeSql.Provider.MySqlConnector.csproj +++ b/Providers/FreeSql.Provider.MySqlConnector/FreeSql.Provider.MySqlConnector.csproj @@ -2,7 +2,7 @@ netstandard2.0;net45 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql 数据库实现,基于 MySql 5.6 diff --git a/Providers/FreeSql.Provider.Oracle/FreeSql.Provider.Oracle.csproj b/Providers/FreeSql.Provider.Oracle/FreeSql.Provider.Oracle.csproj index ae11b3d7..119e72f9 100644 --- a/Providers/FreeSql.Provider.Oracle/FreeSql.Provider.Oracle.csproj +++ b/Providers/FreeSql.Provider.Oracle/FreeSql.Provider.Oracle.csproj @@ -2,7 +2,7 @@ netstandard2.0;net45 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql 数据库实现,基于 Oracle 11 diff --git a/Providers/FreeSql.Provider.PostgreSQL/FreeSql.Provider.PostgreSQL.csproj b/Providers/FreeSql.Provider.PostgreSQL/FreeSql.Provider.PostgreSQL.csproj index fb5c968f..1070d36e 100644 --- a/Providers/FreeSql.Provider.PostgreSQL/FreeSql.Provider.PostgreSQL.csproj +++ b/Providers/FreeSql.Provider.PostgreSQL/FreeSql.Provider.PostgreSQL.csproj @@ -2,7 +2,7 @@ netstandard2.0;net45 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql 数据库实现,基于 PostgreSQL 9.5 diff --git a/Providers/FreeSql.Provider.SqlServer/FreeSql.Provider.SqlServer.csproj b/Providers/FreeSql.Provider.SqlServer/FreeSql.Provider.SqlServer.csproj index c3bda0b4..089db883 100644 --- a/Providers/FreeSql.Provider.SqlServer/FreeSql.Provider.SqlServer.csproj +++ b/Providers/FreeSql.Provider.SqlServer/FreeSql.Provider.SqlServer.csproj @@ -2,7 +2,7 @@ netstandard2.0;net451 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql 数据库实现,基于 SqlServer 2005+,并根据版本适配分页方法:row_number 或 offset fetch next diff --git a/Providers/FreeSql.Provider.Sqlite/FreeSql.Provider.Sqlite.csproj b/Providers/FreeSql.Provider.Sqlite/FreeSql.Provider.Sqlite.csproj index fd5b543b..5dda69b3 100644 --- a/Providers/FreeSql.Provider.Sqlite/FreeSql.Provider.Sqlite.csproj +++ b/Providers/FreeSql.Provider.Sqlite/FreeSql.Provider.Sqlite.csproj @@ -2,7 +2,7 @@ netstandard2.0;net45 - 0.7.4 + 0.7.5 true YeXiangQin FreeSql 数据库实现,基于 Sqlite 3.0