mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-19 18:22:23 +08:00
-
This commit is contained in:
@@ -30,10 +30,10 @@ namespace OrmTest.UnitTest
|
|||||||
|
|
||||||
db.IgnoreColumns = null;
|
db.IgnoreColumns = null;
|
||||||
//Only insert Name
|
//Only insert Name
|
||||||
var s3 = db.Insertable<Student>(insertObj).InsertColumns(it => new object[] { it.Name}).ToSql();
|
var s3 = db.Insertable<Student>(insertObj).InsertColumns(it => new {it.Name}).ToSql();
|
||||||
|
|
||||||
//Ignore Name and TestId
|
//Ignore Name and TestId
|
||||||
var s4=db.Insertable<Student>(insertObj).IgnoreColumns(it => new object[] { it.Name,it.TestId }).ToSql();
|
var s4=db.Insertable<Student>(insertObj).IgnoreColumns(it => new{ it.Name,it.TestId }).ToSql();
|
||||||
|
|
||||||
//Ignore Name and TestId
|
//Ignore Name and TestId
|
||||||
var s5 = db.Insertable<Student>(insertObj).IgnoreColumns(it => it == "Name" || it == "TestId").With(SqlWith.UpdLock).ToSql();
|
var s5 = db.Insertable<Student>(insertObj).IgnoreColumns(it => it == "Name" || it == "TestId").With(SqlWith.UpdLock).ToSql();
|
||||||
@@ -43,7 +43,7 @@ namespace OrmTest.UnitTest
|
|||||||
|
|
||||||
//ToSql
|
//ToSql
|
||||||
var s7= db.Insertable<Student>(insertObj).With(SqlWith.UpdLock)
|
var s7= db.Insertable<Student>(insertObj).With(SqlWith.UpdLock)
|
||||||
.InsertColumns(it => new object[] { it.Name }).ToSql();
|
.InsertColumns(it => new { it.Name }).ToSql();
|
||||||
|
|
||||||
//Insert List<T>
|
//Insert List<T>
|
||||||
var s8= db.Insertable<Student>(insertObjs).With(SqlWith.UpdLock).ToSql();
|
var s8= db.Insertable<Student>(insertObjs).With(SqlWith.UpdLock).ToSql();
|
||||||
|
@@ -47,7 +47,7 @@ namespace SqlSugar
|
|||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Setting
|
#region Setting
|
||||||
public IInsertable<T> IgnoreColumns(Expression<Func<T, object[]>> columns)
|
public IInsertable<T> IgnoreColumns(Expression<Func<T, object>> columns)
|
||||||
{
|
{
|
||||||
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.Array);
|
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.Array);
|
||||||
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Contains(it.EntityPropertyName)).ToList();
|
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Contains(it.EntityPropertyName)).ToList();
|
||||||
@@ -59,7 +59,7 @@ namespace SqlSugar
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IInsertable<T> InsertColumns(Expression<Func<T, object[]>> columns)
|
public IInsertable<T> InsertColumns(Expression<Func<T, object>> columns)
|
||||||
{
|
{
|
||||||
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.Array);
|
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.Array);
|
||||||
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => ignoreColumns.Contains(it.EntityPropertyName)).ToList();
|
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => ignoreColumns.Contains(it.EntityPropertyName)).ToList();
|
||||||
|
@@ -29,6 +29,13 @@ namespace SqlSugar
|
|||||||
break;
|
break;
|
||||||
case ResolveExpressType.FieldMultiple:
|
case ResolveExpressType.FieldMultiple:
|
||||||
break;
|
break;
|
||||||
|
case ResolveExpressType.Array:
|
||||||
|
foreach (var item in expression.Arguments)
|
||||||
|
{
|
||||||
|
base.Expression = item;
|
||||||
|
base.Start();
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@@ -12,8 +12,8 @@ namespace SqlSugar
|
|||||||
int ExecuteCommand();
|
int ExecuteCommand();
|
||||||
int ExecuteReutrnIdentity();
|
int ExecuteReutrnIdentity();
|
||||||
IInsertable<T> With(string lockString);
|
IInsertable<T> With(string lockString);
|
||||||
IInsertable<T> InsertColumns(Expression<Func<T, object[]>> columns);
|
IInsertable<T> InsertColumns(Expression<Func<T, object>> columns);
|
||||||
IInsertable<T> IgnoreColumns(Expression<Func<T, object[]>> columns);
|
IInsertable<T> IgnoreColumns(Expression<Func<T, object>> columns);
|
||||||
IInsertable<T> IgnoreColumns(Func<string,bool> ignoreColumMethod);
|
IInsertable<T> IgnoreColumns(Func<string,bool> ignoreColumMethod);
|
||||||
IInsertable<T> Where(bool isInsertNull);
|
IInsertable<T> Where(bool isInsertNull);
|
||||||
KeyValuePair<string, List<SugarParameter>> ToSql();
|
KeyValuePair<string, List<SugarParameter>> ToSql();
|
||||||
|
Reference in New Issue
Block a user