mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-23 12:33:44 +08:00
Synchronization code
This commit is contained in:
@@ -334,14 +334,14 @@ namespace SqlSugar
|
|||||||
}
|
}
|
||||||
public IDeleteable<T> WhereColumns(List<T> list,Expression<Func<T, object>> columns)
|
public IDeleteable<T> WhereColumns(List<T> list,Expression<Func<T, object>> columns)
|
||||||
{
|
{
|
||||||
if (this.GetPrimaryKeys().IsNullOrEmpty())
|
if (columns!=null)
|
||||||
{
|
|
||||||
tempPrimaryKeys = DeleteBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
|
|
||||||
}
|
|
||||||
else if (columns != null && tempPrimaryKeys.IsNullOrEmpty())
|
|
||||||
{
|
{
|
||||||
tempPrimaryKeys = DeleteBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
|
tempPrimaryKeys = DeleteBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
|
||||||
}
|
}
|
||||||
|
//else if (columns != null && tempPrimaryKeys.IsNullOrEmpty())
|
||||||
|
//{
|
||||||
|
// tempPrimaryKeys = DeleteBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
|
||||||
|
//}
|
||||||
this.Where(list);
|
this.Where(list);
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
|
@@ -340,7 +340,7 @@ namespace SqlSugar
|
|||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
public List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, Expression<Func<T, object>> primaryKeyExpression, object rootValue)
|
public List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, Expression<Func<T, object>> primaryKeyExpression)
|
||||||
{
|
{
|
||||||
var entity = this.Context.EntityMaintenance.GetEntityInfo<T>();
|
var entity = this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||||
var pk = ExpressionTool.GetMemberName(primaryKeyExpression);
|
var pk = ExpressionTool.GetMemberName(primaryKeyExpression);
|
||||||
@@ -359,7 +359,7 @@ namespace SqlSugar
|
|||||||
var list = this.ToList();
|
var list = this.ToList();
|
||||||
return TreeAndFilterIds(childListExpression, parentIdExpression, rootValue, childIds, ref list) ?? new List<T>();
|
return TreeAndFilterIds(childListExpression, parentIdExpression, rootValue, childIds, ref list) ?? new List<T>();
|
||||||
}
|
}
|
||||||
public List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, Expression<Func<T, object>> primaryKeyExpression, object rootValue, object[] childIds)
|
public List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, object[] childIds, Expression<Func<T, object>> primaryKeyExpression)
|
||||||
{
|
{
|
||||||
var list = this.ToList();
|
var list = this.ToList();
|
||||||
return TreeAndFilterIds(childListExpression, parentIdExpression,primaryKeyExpression, rootValue, childIds, ref list) ?? new List<T>();
|
return TreeAndFilterIds(childListExpression, parentIdExpression,primaryKeyExpression, rootValue, childIds, ref list) ?? new List<T>();
|
||||||
|
@@ -585,7 +585,7 @@ ParameterT parameter)
|
|||||||
var list = await this.ToListAsync();
|
var list = await this.ToListAsync();
|
||||||
return TreeAndFilterIds(childListExpression, parentIdExpression, rootValue, childIds, ref list) ?? new List<T>();
|
return TreeAndFilterIds(childListExpression, parentIdExpression, rootValue, childIds, ref list) ?? new List<T>();
|
||||||
}
|
}
|
||||||
public async Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, Expression<Func<T, object>> primaryKeyExpression, object rootValue, object[] childIds)
|
public async Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, object[] childIds, Expression<Func<T, object>> primaryKeyExpression)
|
||||||
{
|
{
|
||||||
var list = await this.ToListAsync();
|
var list = await this.ToListAsync();
|
||||||
return TreeAndFilterIds(childListExpression, parentIdExpression,primaryKeyExpression, rootValue, childIds, ref list) ?? new List<T>();
|
return TreeAndFilterIds(childListExpression, parentIdExpression,primaryKeyExpression, rootValue, childIds, ref list) ?? new List<T>();
|
||||||
@@ -597,7 +597,7 @@ ParameterT parameter)
|
|||||||
var list = await this.ToListAsync();
|
var list = await this.ToListAsync();
|
||||||
return GetTreeRoot(childListExpression, parentIdExpression, pk, list, rootValue) ?? new List<T>();
|
return GetTreeRoot(childListExpression, parentIdExpression, pk, list, rootValue) ?? new List<T>();
|
||||||
}
|
}
|
||||||
public async Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, Expression<Func<T, object>> primaryKeyExpression, object rootValue)
|
public async Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, Expression<Func<T, object>> primaryKeyExpression)
|
||||||
{
|
{
|
||||||
var entity = this.Context.EntityMaintenance.GetEntityInfo<T>();
|
var entity = this.Context.EntityMaintenance.GetEntityInfo<T>();
|
||||||
var pk = ExpressionTool.GetMemberName(primaryKeyExpression); ;
|
var pk = ExpressionTool.GetMemberName(primaryKeyExpression); ;
|
||||||
|
@@ -207,7 +207,14 @@ namespace SqlSugar
|
|||||||
result.AsUpdateable.WhereColumns(whereExpression);
|
result.AsUpdateable.WhereColumns(whereExpression);
|
||||||
result.AsDeleteable.WhereColumns(update.Select(it => it.Item).ToList(),whereExpression);
|
result.AsDeleteable.WhereColumns(update.Select(it => it.Item).ToList(),whereExpression);
|
||||||
}
|
}
|
||||||
result.AsDeleteable.Where(delete.Select(it => it.Item).ToList());
|
if (this.whereExpression != null)
|
||||||
|
{
|
||||||
|
result.AsDeleteable.WhereColumns(delete.Select(it => it.Item).ToList(), whereExpression);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result.AsDeleteable.Where(delete.Select(it => it.Item).ToList());
|
||||||
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -233,13 +233,13 @@ namespace SqlSugar
|
|||||||
Task<List<T>> ToParentListAsync(Expression<Func<T, object>> parentIdExpression, object primaryKeyValue, Expression<Func<T, bool>> parentWhereExpression);
|
Task<List<T>> ToParentListAsync(Expression<Func<T, object>> parentIdExpression, object primaryKeyValue, Expression<Func<T, bool>> parentWhereExpression);
|
||||||
|
|
||||||
List<T> ToTree(Expression<Func<T,IEnumerable<object>>> childListExpression, Expression<Func<T,object>> parentIdExpression,object rootValue);
|
List<T> ToTree(Expression<Func<T,IEnumerable<object>>> childListExpression, Expression<Func<T,object>> parentIdExpression,object rootValue);
|
||||||
List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, Expression<Func<T, object>> primaryKeyExpression, object rootValue);
|
List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, Expression<Func<T, object>> primaryKeyExpression);
|
||||||
Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue);
|
Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue);
|
||||||
Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, Expression<Func<T, object>> primaryKeyExpression, object rootValue);
|
Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, Expression<Func<T, object>> primaryKeyExpression);
|
||||||
List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, object[] childIds);
|
List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, object[] childIds);
|
||||||
List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, Expression<Func<T, object>> primaryKeyExpression, object rootValue, object[] childIds);
|
List<T> ToTree(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, object[] childIds, Expression<Func<T, object>> primaryKeyExpression);
|
||||||
Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, object[] childIds);
|
Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, object[] childIds);
|
||||||
Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, Expression<Func<T, object>> primaryKeyExpression, object rootValue, object[] childIds);
|
Task<List<T>> ToTreeAsync(Expression<Func<T, IEnumerable<object>>> childListExpression, Expression<Func<T, object>> parentIdExpression, object rootValue, object[] childIds, Expression<Func<T, object>> primaryKeyExpression);
|
||||||
DataTable ToDataTable();
|
DataTable ToDataTable();
|
||||||
DataTable ToDataTableByEntity();
|
DataTable ToDataTableByEntity();
|
||||||
Task<DataTable> ToDataTableAsync();
|
Task<DataTable> ToDataTableAsync();
|
||||||
|
Reference in New Issue
Block a user