From 83effcb61472037cda981a243d46b56abe525abf Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Wed, 8 May 2024 18:40:47 +0800 Subject: [PATCH] Synchronization code --- .../ExecuteNavProvider/UpdateNavTask.cs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavTask.cs b/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavTask.cs index 4a11d8e7a..e0f092cdb 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavTask.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavTask.cs @@ -75,6 +75,23 @@ namespace SqlSugar } return methodInfo; } + + public UpdateNavMethodInfo IncludesAllFirstLayer(UpdateNavOptions updateNavOptions,params string[] ignoreColumns) + { + if (ignoreColumns == null) + { + ignoreColumns = new string[] { }; + } + this.Context = UpdateNavProvider._Context; + var navColumns = this.Context.EntityMaintenance.GetEntityInfo().Columns.Where(it => !ignoreColumns.Contains(it.PropertyName) || !ignoreColumns.Any(z => z.EqualCase(it.DbColumnName))).Where(it => it.Navigat != null).ToList(); + var updateNavs = this; + UpdateNavMethodInfo methodInfo = updateNavs.IncludeByNameString(navColumns[0].PropertyName); + foreach (var item in navColumns.Skip(1)) + { + methodInfo = methodInfo.IncludeByNameString(item.PropertyName, updateNavOptions); + } + return methodInfo; + } public UpdateNavMethodInfo IncludeByNameString(string navMemberName, UpdateNavOptions updateNavOptions=null) { UpdateNavMethodInfo result = new UpdateNavMethodInfo();