diff --git a/Directory.Build.props b/Directory.Build.props
index 1dc6876af..eb0b7ff84 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -11,7 +11,7 @@
diff --git a/Extensions/FreeSql.Extensions.BaseEntity/FreeSql.Extensions.BaseEntity.csproj b/Extensions/FreeSql.Extensions.BaseEntity/FreeSql.Extensions.BaseEntity.csproj
index 3a6af6c8c..476b7a511 100644
--- a/Extensions/FreeSql.Extensions.BaseEntity/FreeSql.Extensions.BaseEntity.csproj
+++ b/Extensions/FreeSql.Extensions.BaseEntity/FreeSql.Extensions.BaseEntity.csproj
@@ -19,7 +19,7 @@
key.snk
false
latest
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Extensions/FreeSql.Extensions.JsonMap/FreeSql.Extensions.JsonMap.csproj b/Extensions/FreeSql.Extensions.JsonMap/FreeSql.Extensions.JsonMap.csproj
index afbdb5402..90c05b354 100644
--- a/Extensions/FreeSql.Extensions.JsonMap/FreeSql.Extensions.JsonMap.csproj
+++ b/Extensions/FreeSql.Extensions.JsonMap/FreeSql.Extensions.JsonMap.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj b/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj
index 860958915..2b49a6e12 100644
--- a/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj
+++ b/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj
@@ -15,7 +15,7 @@
$(AssemblyName)
true
true
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Extensions/FreeSql.Extensions.Linq/FreeSql.Extensions.Linq.csproj b/Extensions/FreeSql.Extensions.Linq/FreeSql.Extensions.Linq.csproj
index 1ce21fbf0..3814e5b2f 100644
--- a/Extensions/FreeSql.Extensions.Linq/FreeSql.Extensions.Linq.csproj
+++ b/Extensions/FreeSql.Extensions.Linq/FreeSql.Extensions.Linq.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Extensions/FreeSql.Generator/FreeSql.Generator.csproj b/Extensions/FreeSql.Generator/FreeSql.Generator.csproj
index 2ece8ba74..10f48d646 100644
--- a/Extensions/FreeSql.Generator/FreeSql.Generator.csproj
+++ b/Extensions/FreeSql.Generator/FreeSql.Generator.csproj
@@ -13,7 +13,7 @@
https://github.com/2881099/FreeSql
https://github.com/2881099/FreeSql
FreeSql DbFirst 实体生成器
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/FreeSql.All/FreeSql.All.csproj b/FreeSql.All/FreeSql.All.csproj
index f5b4217be..43f7676a0 100644
--- a/FreeSql.All/FreeSql.All.csproj
+++ b/FreeSql.All/FreeSql.All.csproj
@@ -17,7 +17,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/FreeSql.DbContext/FreeSql.DbContext.csproj b/FreeSql.DbContext/FreeSql.DbContext.csproj
index 6931e14ca..27d5e097e 100644
--- a/FreeSql.DbContext/FreeSql.DbContext.csproj
+++ b/FreeSql.DbContext/FreeSql.DbContext.csproj
@@ -17,7 +17,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/FreeSql.DbContext/FreeSql.DbContext.xml b/FreeSql.DbContext/FreeSql.DbContext.xml
index 26522f106..6ca84f12d 100644
--- a/FreeSql.DbContext/FreeSql.DbContext.xml
+++ b/FreeSql.DbContext/FreeSql.DbContext.xml
@@ -800,7 +800,9 @@
-
+
+
+Microsoft.Extensions.DependencyInjection.FreeSqlRepositoryDependencyInjection.AddFreeRepository(Microsoft.Extensions.DependencyInjection.IServiceCollection,System.Action{FreeSql.FluentDataFilter},System.Reflection.Assembly[])">
批量注入 Repository,可以参考代码自行调整
diff --git a/FreeSql.Repository/FreeSql.Repository.csproj b/FreeSql.Repository/FreeSql.Repository.csproj
index e0d4b75f9..45ccb6442 100644
--- a/FreeSql.Repository/FreeSql.Repository.csproj
+++ b/FreeSql.Repository/FreeSql.Repository.csproj
@@ -17,7 +17,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/FreeSql/FreeSql.csproj b/FreeSql/FreeSql.csproj
index bfd3fdfa5..aab1988d4 100644
--- a/FreeSql/FreeSql.csproj
+++ b/FreeSql/FreeSql.csproj
@@ -17,7 +17,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/FreeSql/FreeSql.xml b/FreeSql/FreeSql.xml
index fd52bcf53..91120bfbf 100644
--- a/FreeSql/FreeSql.xml
+++ b/FreeSql/FreeSql.xml
@@ -1789,6 +1789,17 @@
+
+
+ 添加或更新,设置SQL
+
+ 查询SQL
+
+ 根据临时主键插入或更新,a => a.Name | a => new{a.Name,a.Time} | a => new[]{"name","time"}
+ 注意:不处理自增,因某些数据库依赖主键或唯一键,所以指定临时主键仅对 SqlServer/PostgreSQL/Firebird/达梦/南大通用/金仓/神通 有效
+
+
+
当记录存在时,什么都不做
diff --git a/FreeSql/Interface/Curd/IInsertOrUpdate.cs b/FreeSql/Interface/Curd/IInsertOrUpdate.cs
index 3b06f6c2f..e1ca5eff4 100644
--- a/FreeSql/Interface/Curd/IInsertOrUpdate.cs
+++ b/FreeSql/Interface/Curd/IInsertOrUpdate.cs
@@ -45,7 +45,15 @@ namespace FreeSql
///
///
IInsertOrUpdate SetSource(IEnumerable source, Expression> tempPrimarys = null);
-
+ ///
+ /// 添加或更新,设置SQL
+ ///
+ /// 查询SQL
+ ///
+ /// 根据临时主键插入或更新,a => a.Name | a => new{a.Name,a.Time} | a => new[]{"name","time"}
+ /// 注意:不处理自增,因某些数据库依赖主键或唯一键,所以指定临时主键仅对 SqlServer/PostgreSQL/Firebird/达梦/南大通用/金仓/神通 有效
+ ///
+ ///
IInsertOrUpdate SetSource(string sql, Expression> tempPrimarys = null);
///
diff --git a/Providers/FreeSql.Provider.ClickHouse/FreeSql.Provider.ClickHouse.csproj b/Providers/FreeSql.Provider.ClickHouse/FreeSql.Provider.ClickHouse.csproj
index 092449043..2179273c3 100644
--- a/Providers/FreeSql.Provider.ClickHouse/FreeSql.Provider.ClickHouse.csproj
+++ b/Providers/FreeSql.Provider.ClickHouse/FreeSql.Provider.ClickHouse.csproj
@@ -19,7 +19,7 @@
False
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.Custom/FreeSql.Provider.Custom.csproj b/Providers/FreeSql.Provider.Custom/FreeSql.Provider.Custom.csproj
index f02bd4d91..b8e15edd4 100644
--- a/Providers/FreeSql.Provider.Custom/FreeSql.Provider.Custom.csproj
+++ b/Providers/FreeSql.Provider.Custom/FreeSql.Provider.Custom.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.Dameng/FreeSql.Provider.Dameng.csproj b/Providers/FreeSql.Provider.Dameng/FreeSql.Provider.Dameng.csproj
index f4559d9e0..e3cb244dc 100644
--- a/Providers/FreeSql.Provider.Dameng/FreeSql.Provider.Dameng.csproj
+++ b/Providers/FreeSql.Provider.Dameng/FreeSql.Provider.Dameng.csproj
@@ -15,7 +15,7 @@
$(AssemblyName)
true
true
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.Firebird/FreeSql.Provider.Firebird.csproj b/Providers/FreeSql.Provider.Firebird/FreeSql.Provider.Firebird.csproj
index 83b875427..777e1fabb 100644
--- a/Providers/FreeSql.Provider.Firebird/FreeSql.Provider.Firebird.csproj
+++ b/Providers/FreeSql.Provider.Firebird/FreeSql.Provider.Firebird.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.GBase/FreeSql.Provider.GBase.csproj b/Providers/FreeSql.Provider.GBase/FreeSql.Provider.GBase.csproj
index f81a22e88..03b43467a 100644
--- a/Providers/FreeSql.Provider.GBase/FreeSql.Provider.GBase.csproj
+++ b/Providers/FreeSql.Provider.GBase/FreeSql.Provider.GBase.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.KingbaseES/FreeSql.Provider.KingbaseES.csproj b/Providers/FreeSql.Provider.KingbaseES/FreeSql.Provider.KingbaseES.csproj
index cea9bbeff..1cdb5a393 100644
--- a/Providers/FreeSql.Provider.KingbaseES/FreeSql.Provider.KingbaseES.csproj
+++ b/Providers/FreeSql.Provider.KingbaseES/FreeSql.Provider.KingbaseES.csproj
@@ -15,7 +15,7 @@
$(AssemblyName)
true
true
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.MsAccess/FreeSql.Provider.MsAccess.csproj b/Providers/FreeSql.Provider.MsAccess/FreeSql.Provider.MsAccess.csproj
index 4a2a8d960..c1e59ec1c 100644
--- a/Providers/FreeSql.Provider.MsAccess/FreeSql.Provider.MsAccess.csproj
+++ b/Providers/FreeSql.Provider.MsAccess/FreeSql.Provider.MsAccess.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.MySql/FreeSql.Provider.MySql.csproj b/Providers/FreeSql.Provider.MySql/FreeSql.Provider.MySql.csproj
index b9e438b5d..f914a1523 100644
--- a/Providers/FreeSql.Provider.MySql/FreeSql.Provider.MySql.csproj
+++ b/Providers/FreeSql.Provider.MySql/FreeSql.Provider.MySql.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.MySqlConnector/FreeSql.Provider.MySqlConnector.csproj b/Providers/FreeSql.Provider.MySqlConnector/FreeSql.Provider.MySqlConnector.csproj
index 0d0745869..19cca7614 100644
--- a/Providers/FreeSql.Provider.MySqlConnector/FreeSql.Provider.MySqlConnector.csproj
+++ b/Providers/FreeSql.Provider.MySqlConnector/FreeSql.Provider.MySqlConnector.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.Odbc/FreeSql.Provider.Odbc.csproj b/Providers/FreeSql.Provider.Odbc/FreeSql.Provider.Odbc.csproj
index c516ef4a3..ae97e2b3c 100644
--- a/Providers/FreeSql.Provider.Odbc/FreeSql.Provider.Odbc.csproj
+++ b/Providers/FreeSql.Provider.Odbc/FreeSql.Provider.Odbc.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.Oracle/FreeSql.Provider.Oracle.csproj b/Providers/FreeSql.Provider.Oracle/FreeSql.Provider.Oracle.csproj
index d592b5e88..7065b3455 100644
--- a/Providers/FreeSql.Provider.Oracle/FreeSql.Provider.Oracle.csproj
+++ b/Providers/FreeSql.Provider.Oracle/FreeSql.Provider.Oracle.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.PostgreSQL/FreeSql.Provider.PostgreSQL.csproj b/Providers/FreeSql.Provider.PostgreSQL/FreeSql.Provider.PostgreSQL.csproj
index cc4f10c85..01444dfd6 100644
--- a/Providers/FreeSql.Provider.PostgreSQL/FreeSql.Provider.PostgreSQL.csproj
+++ b/Providers/FreeSql.Provider.PostgreSQL/FreeSql.Provider.PostgreSQL.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.ShenTong/FreeSql.Provider.ShenTong.csproj b/Providers/FreeSql.Provider.ShenTong/FreeSql.Provider.ShenTong.csproj
index 65e602b90..0111711dc 100644
--- a/Providers/FreeSql.Provider.ShenTong/FreeSql.Provider.ShenTong.csproj
+++ b/Providers/FreeSql.Provider.ShenTong/FreeSql.Provider.ShenTong.csproj
@@ -15,7 +15,7 @@
$(AssemblyName)
true
true
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.SqlServer/FreeSql.Provider.SqlServer.csproj b/Providers/FreeSql.Provider.SqlServer/FreeSql.Provider.SqlServer.csproj
index 15c591326..7b47c4b98 100644
--- a/Providers/FreeSql.Provider.SqlServer/FreeSql.Provider.SqlServer.csproj
+++ b/Providers/FreeSql.Provider.SqlServer/FreeSql.Provider.SqlServer.csproj
@@ -18,7 +18,7 @@
true
false
key.snk
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.SqlServerForSystem/FreeSql.Provider.SqlServerForSystem.csproj b/Providers/FreeSql.Provider.SqlServerForSystem/FreeSql.Provider.SqlServerForSystem.csproj
index 6fc6bb2ef..73ed14ba6 100644
--- a/Providers/FreeSql.Provider.SqlServerForSystem/FreeSql.Provider.SqlServerForSystem.csproj
+++ b/Providers/FreeSql.Provider.SqlServerForSystem/FreeSql.Provider.SqlServerForSystem.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.Sqlite/FreeSql.Provider.Sqlite.csproj b/Providers/FreeSql.Provider.Sqlite/FreeSql.Provider.Sqlite.csproj
index e8e7231e5..741510eb0 100644
--- a/Providers/FreeSql.Provider.Sqlite/FreeSql.Provider.Sqlite.csproj
+++ b/Providers/FreeSql.Provider.Sqlite/FreeSql.Provider.Sqlite.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823
diff --git a/Providers/FreeSql.Provider.SqliteCore/FreeSql.Provider.SqliteCore.csproj b/Providers/FreeSql.Provider.SqliteCore/FreeSql.Provider.SqliteCore.csproj
index cb7f2c765..07b62bc6c 100644
--- a/Providers/FreeSql.Provider.SqliteCore/FreeSql.Provider.SqliteCore.csproj
+++ b/Providers/FreeSql.Provider.SqliteCore/FreeSql.Provider.SqliteCore.csproj
@@ -18,7 +18,7 @@
true
key.snk
false
- 3.2.666-preview20220822
+ 3.2.666-preview20220823