diff --git a/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavProviderHelper.cs b/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavProviderHelper.cs index 431c56251..64b1bc90d 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavProviderHelper.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/ExecuteNavProvider/UpdateNavProviderHelper.cs @@ -97,6 +97,10 @@ namespace SqlSugar { var pk= this._Context.EntityMaintenance.GetEntityInfo().Columns.Where(it => it.IsPrimarykey); List ignoreColumns = new List(); + if (_Options?.IgnoreColumns != null) + { + ignoreColumns.AddRange(_Options.IgnoreColumns); + } if (pk.Any()) { ignoreColumns.AddRange(pk.Select(it=>it.PropertyName)); @@ -112,13 +116,14 @@ namespace SqlSugar } else { + var ignoreColumns = _Options?.IgnoreColumns; if (IsDeleted) { - x.AsUpdateable.PageSize(1).EnableQueryFilter().ExecuteCommand(); + x.AsUpdateable.IgnoreColumns(ignoreColumns?.ToArray()).PageSize(1).EnableQueryFilter().ExecuteCommand(); } else { - x.AsUpdateable.ExecuteCommand(); + x.AsUpdateable.IgnoreColumns(ignoreColumns?.ToArray()).ExecuteCommand(); } } InitData(pkColumn, insertData); diff --git a/Src/Asp.Net/SqlSugar/Entities/DeleteNavOptions.cs b/Src/Asp.Net/SqlSugar/Entities/DeleteNavOptions.cs index 19f9226a9..ec0c253cf 100644 --- a/Src/Asp.Net/SqlSugar/Entities/DeleteNavOptions.cs +++ b/Src/Asp.Net/SqlSugar/Entities/DeleteNavOptions.cs @@ -54,6 +54,7 @@ namespace SqlSugar public bool OneToManyInsertOrUpdate { get; set; } public Expression RootFunc { get; set; } public Expression CurrentFunc { get; set; } + public string[] IgnoreColumns { get; set; } } public class InsertNavOptions