From f60932722b387833f456a624cb07a6d53d2937da Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Fri, 12 May 2017 16:08:23 +0800 Subject: [PATCH] - --- OrmTest/UnitTest/Insert.cs | 6 +++--- SqlSugar/Abstract/InsertableProvider/InsertableProvider.cs | 4 ++-- .../ExpressionsToSql/ResolveItems/NewExpressionResolve.cs | 7 +++++++ SqlSugar/Interface/Insertable.cs | 4 ++-- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/OrmTest/UnitTest/Insert.cs b/OrmTest/UnitTest/Insert.cs index d46adb93e..5f11ca04b 100644 --- a/OrmTest/UnitTest/Insert.cs +++ b/OrmTest/UnitTest/Insert.cs @@ -30,10 +30,10 @@ namespace OrmTest.UnitTest db.IgnoreColumns = null; //Only insert Name - var s3 = db.Insertable(insertObj).InsertColumns(it => new object[] { it.Name}).ToSql(); + var s3 = db.Insertable(insertObj).InsertColumns(it => new {it.Name}).ToSql(); //Ignore Name and TestId - var s4=db.Insertable(insertObj).IgnoreColumns(it => new object[] { it.Name,it.TestId }).ToSql(); + var s4=db.Insertable(insertObj).IgnoreColumns(it => new{ it.Name,it.TestId }).ToSql(); //Ignore Name and TestId var s5 = db.Insertable(insertObj).IgnoreColumns(it => it == "Name" || it == "TestId").With(SqlWith.UpdLock).ToSql(); @@ -43,7 +43,7 @@ namespace OrmTest.UnitTest //ToSql var s7= db.Insertable(insertObj).With(SqlWith.UpdLock) - .InsertColumns(it => new object[] { it.Name }).ToSql(); + .InsertColumns(it => new { it.Name }).ToSql(); //Insert List var s8= db.Insertable(insertObjs).With(SqlWith.UpdLock).ToSql(); diff --git a/SqlSugar/Abstract/InsertableProvider/InsertableProvider.cs b/SqlSugar/Abstract/InsertableProvider/InsertableProvider.cs index e015617fc..5c258d91b 100644 --- a/SqlSugar/Abstract/InsertableProvider/InsertableProvider.cs +++ b/SqlSugar/Abstract/InsertableProvider/InsertableProvider.cs @@ -47,7 +47,7 @@ namespace SqlSugar #endregion #region Setting - public IInsertable IgnoreColumns(Expression> columns) + public IInsertable IgnoreColumns(Expression> columns) { var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.Array); this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Contains(it.EntityPropertyName)).ToList(); @@ -59,7 +59,7 @@ namespace SqlSugar return this; } - public IInsertable InsertColumns(Expression> columns) + public IInsertable InsertColumns(Expression> columns) { var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.Array); this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => ignoreColumns.Contains(it.EntityPropertyName)).ToList(); diff --git a/SqlSugar/ExpressionsToSql/ResolveItems/NewExpressionResolve.cs b/SqlSugar/ExpressionsToSql/ResolveItems/NewExpressionResolve.cs index a3895913e..45a8fa26d 100644 --- a/SqlSugar/ExpressionsToSql/ResolveItems/NewExpressionResolve.cs +++ b/SqlSugar/ExpressionsToSql/ResolveItems/NewExpressionResolve.cs @@ -29,6 +29,13 @@ namespace SqlSugar break; case ResolveExpressType.FieldMultiple: break; + case ResolveExpressType.Array: + foreach (var item in expression.Arguments) + { + base.Expression = item; + base.Start(); + } + break; default: break; } diff --git a/SqlSugar/Interface/Insertable.cs b/SqlSugar/Interface/Insertable.cs index 9cfed894c..7f0601586 100644 --- a/SqlSugar/Interface/Insertable.cs +++ b/SqlSugar/Interface/Insertable.cs @@ -12,8 +12,8 @@ namespace SqlSugar int ExecuteCommand(); int ExecuteReutrnIdentity(); IInsertable With(string lockString); - IInsertable InsertColumns(Expression> columns); - IInsertable IgnoreColumns(Expression> columns); + IInsertable InsertColumns(Expression> columns); + IInsertable IgnoreColumns(Expression> columns); IInsertable IgnoreColumns(Func ignoreColumMethod); IInsertable Where(bool isInsertNull); KeyValuePair> ToSql();