mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2026-02-25 04:27:14 +08:00
Update UpdateColumns BUG
This commit is contained in:
@@ -31,9 +31,9 @@ namespace OrmTest.UnitTest
|
|||||||
var id= db.Insertable(x).AS("student").ExecuteReturnIdentity();
|
var id= db.Insertable(x).AS("student").ExecuteReturnIdentity();
|
||||||
var data = db.Queryable<StudentEnum>().AS("student").InSingle(id);
|
var data = db.Queryable<StudentEnum>().AS("student").InSingle(id);
|
||||||
shoolValue = SchoolEnum.UniversityOfOxford;
|
shoolValue = SchoolEnum.UniversityOfOxford;
|
||||||
var sql= db.Updateable<StudentEnum>().AS("student").UpdateColumns(it=>new StudentEnum() { Name="a" , SchoolId= shoolValue }).Where(it=>it.Id==id).ToSql();
|
var sql= db.Updateable<StudentEnum>().AS("student").UpdateColumns(it=>new StudentEnum() { Name="a" , SchoolId= shoolValue }).Where(it=>it.Id==id).ToSql();
|
||||||
|
|
||||||
var sql2 = db.Updateable<StudentEnum>().AS("student").UpdateColumns(it => new StudentEnum() { Name = "a", SchoolId = SchoolEnum.UniversityOfOxford }).Where(it => it.Id == id).ToSql();
|
var sql2 = db.Updateable<StudentEnum>().AS("student").UpdateColumns(it => new StudentEnum() { Name = "a", SchoolId = SchoolEnum.UniversityOfOxford }).Where(it => it.Id == id).ToSql();
|
||||||
|
var sql3 = db.Updateable<StudentEnum>().AS("student").UpdateColumns(it => it.SchoolId == shoolValue ).ToSql();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -141,7 +141,7 @@ namespace SqlSugar
|
|||||||
public IUpdateable<T> UpdateColumns(Expression<Func<T, bool>> columns) {
|
public IUpdateable<T> UpdateColumns(Expression<Func<T, bool>> columns) {
|
||||||
var binaryExp = columns.Body as BinaryExpression;
|
var binaryExp = columns.Body as BinaryExpression;
|
||||||
Check.Exception(!binaryExp.NodeType.IsIn(ExpressionType.Equal), "No support {0}", columns.ToString());
|
Check.Exception(!binaryExp.NodeType.IsIn(ExpressionType.Equal), "No support {0}", columns.ToString());
|
||||||
Check.Exception(!(binaryExp.Left is MemberExpression), "No support {0}", columns.ToString());
|
Check.Exception(!(binaryExp.Left is MemberExpression)&& !(binaryExp.Left is UnaryExpression), "No support {0}", columns.ToString());
|
||||||
Check.Exception(ExpressionTool.IsConstExpression(binaryExp.Left as MemberExpression), "No support {0}", columns.ToString());
|
Check.Exception(ExpressionTool.IsConstExpression(binaryExp.Left as MemberExpression), "No support {0}", columns.ToString());
|
||||||
var expResult = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.WhereSingle).GetResultString().Replace("))",") )").Replace("((", "( (").Trim().TrimStart('(').TrimEnd(')');
|
var expResult = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.WhereSingle).GetResultString().Replace("))",") )").Replace("((", "( (").Trim().TrimStart('(').TrimEnd(')');
|
||||||
string key = SqlBuilder.GetNoTranslationColumnName(expResult);
|
string key = SqlBuilder.GetNoTranslationColumnName(expResult);
|
||||||
|
|||||||
Reference in New Issue
Block a user