diff --git a/Src/Asp.Net/SqlServerTest/UnitTest/UInsert2.cs b/Src/Asp.Net/SqlServerTest/UnitTest/UInsert2.cs index 2be09a22e..ad4293446 100644 --- a/Src/Asp.Net/SqlServerTest/UnitTest/UInsert2.cs +++ b/Src/Asp.Net/SqlServerTest/UnitTest/UInsert2.cs @@ -20,6 +20,19 @@ namespace OrmTest db.Insertable(new Unitsdafa111()).ExecuteCommand(); db.Insertable(new Unitsdafa111() {Id=Guid.NewGuid(),Id2=Guid.NewGuid() }).ExecuteCommand(); var list=db.Queryable().ToList(); + Db.Insertable(new List() { new UnitafaXX1 { } }).IgnoreColumns(z => z.dt2).CallEntityMethod(z => z.Test01()).ExecuteCommand(); + try + { + Db.Insertable(new List() { new UnitafaXX1 { Id=1, dt2=DateTime.Now,dt = DateTime.Now } }).IgnoreColumns(false, true).UseParameter().ExecuteCommand(); + throw new Exception("ok"); + } + catch (Exception ex) + { + if (ex.Message == "ok") + { + throw new Exception("unit error"); + } + } } public class Unitsdafa111 { @@ -50,4 +63,19 @@ namespace OrmTest } } + + public class UnitafaXX1 + { + [SqlSugar.SugarColumn(IsPrimaryKey =true,IsIdentity = true)] + public int Id { get; set; } + + public DateTime dt { get; set; } + [SqlSugar.SugarColumn(IsNullable =true)] + public DateTime dt2 { get; set; } + + internal void Test01() + { + dt = DateTime.Now; + } + } } diff --git a/Src/Asp.Net/SqlSugar/Abstract/InsertableProvider/ParameterInsertable.cs b/Src/Asp.Net/SqlSugar/Abstract/InsertableProvider/ParameterInsertable.cs index 63416d738..e0f3d528d 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/InsertableProvider/ParameterInsertable.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/InsertableProvider/ParameterInsertable.cs @@ -99,6 +99,10 @@ namespace SqlSugar var removeCacheFunc = inserable.RemoveCacheFunc; var objects = inserable.InsertObjs; var identityList = inserable.EntityInfo.Columns.Where(it => it.IsIdentity).Select(it => it.PropertyName).ToArray(); + if (inserable.IsOffIdentity) + { + identityList = new string[] { }; + } this.Context.Utilities.PageEach(objects, 100, pagelist => { @@ -120,6 +124,10 @@ namespace SqlSugar var removeCacheFunc = inserable.RemoveCacheFunc; var objects = inserable.InsertObjs; var identityList = inserable.EntityInfo.Columns.Where(it => it.IsIdentity).Select(it => it.PropertyName).ToArray(); + if (inserable.IsOffIdentity) + { + identityList = new string[] { }; + } await this.Context.Utilities.PageEachAsync(objects, 100,async pagelist => {