From 8c4f6ec7666646737b3e0f4cf5912ff3e05a462a Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Sat, 24 Sep 2022 16:35:32 +0800 Subject: [PATCH] Update InsertNav and UpdateNav --- .../ExecuteNavProvider/InsertNavProviderManyToMany.cs | 11 ++++++++++- .../ExecuteNavProvider/UpdateNavManyToMany.cs | 10 ++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/InsertNavProviderManyToMany.cs b/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/InsertNavProviderManyToMany.cs index 8f8466038..dbe88cd2b 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/InsertNavProviderManyToMany.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/InsertNavProviderManyToMany.cs @@ -30,6 +30,8 @@ namespace SqlSugar .Where(it => it.PropertyName != mappingA.PropertyName) .Where(it => it.PropertyName != mappingB.PropertyName) .Where(it => !it.IsIdentity) + .Where(it => !it.IsOnlyIgnoreInsert) + .Where(it => !it.IsIgnore) .Where(it => !it.IsPrimarykey); Check.Exception(mappingA == null || mappingB == null, $"Navigate property {name} error ", $"导航属性{name}配置错误"); List> mappgingTables = new List>(); @@ -51,7 +53,14 @@ namespace SqlSugar { if (!keyValuePairs.ContainsKey(pair.DbColumnName)) { - keyValuePairs.Add(pair.DbColumnName, UtilMethods.GetDefaultValue(pair.UnderType)); + if (pair.UnderType == UtilConstants.DateType) + { + keyValuePairs.Add(pair.DbColumnName, DateTime.Now); + } + else + { + keyValuePairs.Add(pair.DbColumnName, UtilMethods.GetDefaultValue(pair.UnderType)); + } } } } diff --git a/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavManyToMany.cs b/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavManyToMany.cs index 2d246bc08..a36956c5b 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavManyToMany.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavManyToMany.cs @@ -30,7 +30,9 @@ namespace SqlSugar .Where(it => it.PropertyName != mappingA.PropertyName) .Where(it => it.PropertyName != mappingB.PropertyName) .Where(it=>!it.IsIdentity) - .Where(it => !it.IsPrimarykey); + .Where(it => !it.IsPrimarykey) + .Where(it => !it.IsOnlyIgnoreInsert) + .Where(it => !it.IsIgnore); Check.Exception(mappingA == null || mappingB == null, $"Navigate property {name} error ", $"导航属性{name}配置错误"); List> mappgingTables = new List>(); var ids=new List(); @@ -61,7 +63,11 @@ namespace SqlSugar { foreach (var pair in mappingOthers) { - if (!keyValuePairs.ContainsKey(pair.DbColumnName)) + if (pair.UnderType == UtilConstants.DateType) + { + keyValuePairs.Add(pair.DbColumnName, DateTime.Now); + } + else { keyValuePairs.Add(pair.DbColumnName, UtilMethods.GetDefaultValue(pair.UnderType)); }