From 0deae80f183b0786eff3d2542d3f67bfc415f0ef Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Tue, 25 Oct 2022 09:57:12 +0800 Subject: [PATCH] Synchronization code --- .../ExecuteNavProvider/InsertNavProviderManyToMany.cs | 9 ++++++++- Src/Asp.NetCore2/SqlSugar/Entities/DeleteNavOptions.cs | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/ExecuteNavProvider/InsertNavProviderManyToMany.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/ExecuteNavProvider/InsertNavProviderManyToMany.cs index 5ba51ffe3..308b8a892 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/ExecuteNavProvider/InsertNavProviderManyToMany.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/ExecuteNavProvider/InsertNavProviderManyToMany.cs @@ -76,7 +76,14 @@ namespace SqlSugar } } var ids = mappgingTables.Select(x => x[mappingA.DbColumnName]).ToList(); - this._Context.Deleteable().AS(mappingEntity.DbTableName).In(mappingA.DbColumnName, ids).ExecuteCommand(); + if (_navOptions != null && _navOptions.ManyToManyNoDeleteMap) + { + //The reserved + } + else + { + this._Context.Deleteable().AS(mappingEntity.DbTableName).In(mappingA.DbColumnName, ids).ExecuteCommand(); + } this._Context.Insertable(mappgingTables).AS(mappingEntity.DbTableName).ExecuteCommand(); SetNewParent(thisEntity, thisPkColumn); } diff --git a/Src/Asp.NetCore2/SqlSugar/Entities/DeleteNavOptions.cs b/Src/Asp.NetCore2/SqlSugar/Entities/DeleteNavOptions.cs index 2669fbe5d..826091f62 100644 --- a/Src/Asp.NetCore2/SqlSugar/Entities/DeleteNavOptions.cs +++ b/Src/Asp.NetCore2/SqlSugar/Entities/DeleteNavOptions.cs @@ -42,5 +42,6 @@ namespace SqlSugar public class InsertNavOptions { public bool OneToManyIfExistsNoInsert { get; set; } + public bool ManyToManyNoDeleteMap { get; set; } } }