Synchronization code

This commit is contained in:
sunkaixuan 2024-02-07 13:53:05 +08:00
parent 18822368ca
commit 006075b06b
3 changed files with 22 additions and 0 deletions

View File

@ -68,6 +68,15 @@ namespace SqlSugar
var result = Context.GetType().GetMyMethod("ExecuteCommandAsync", 0).Invoke(Context, new object[] { });
return await (Task<int>)result;
}
public UpdateCommonMethodInfo SplitTable()
{
var newMethod = this.Context.GetType().GetMyMethod("SplitTable", 0);
var result = newMethod.Invoke(Context, new object[] { });
return new UpdateCommonMethodInfo()
{
Context = result
};
}
}
}

View File

@ -60,6 +60,7 @@ namespace SqlSugar
{
var addList = item.Select(it => it.Item).ToList();
result += await this.Context.Updateable(addList)
.WhereColumns(this.WhereColumns?.ToArray())
.UpdateColumns(updateobj.UpdateBuilder.UpdateColumns?.ToArray())
.IgnoreColumns(this.updateobj.UpdateBuilder.IsNoUpdateNull, this.updateobj.UpdateBuilder.IsOffIdentity, this.updateobj.UpdateBuilder.IsNoUpdateDefaultValue)
.IgnoreColumns(GetIgnoreColumns()).AS(item.Key).ExecuteCommandAsync();
@ -75,6 +76,7 @@ namespace SqlSugar
{
var addList = item.Select(it => it.Item).ToList();
result += await this.Context.Updateable(addList)
.WhereColumns(this.WhereColumns?.ToArray())
.UpdateColumns(updateobj.UpdateBuilder.UpdateColumns?.ToArray())
.IgnoreColumns(this.updateobj.UpdateBuilder.IsNoUpdateNull, this.updateobj.UpdateBuilder.IsOffIdentity, this.updateobj.UpdateBuilder.IsNoUpdateDefaultValue)
.IgnoreColumns(GetIgnoreColumns()).AS(item.Key).ExecuteCommandWithOptLockAsync(isThrowError);

View File

@ -50,6 +50,17 @@ namespace SqlSugar
};
}
public UpdateCommonMethodInfo WhereColumns(params string[] whereColumns)
{
var inertable = MethodInfo.Invoke(Context, new object[] { objectValue });
var newMethod = inertable.GetType().GetMyMethod("WhereColumns", 1, typeof(string[]));
var result = newMethod.Invoke(inertable, new object[] { whereColumns });
return new UpdateCommonMethodInfo()
{
Context = result,
};
}
public UpdateCommonMethodInfo AS(string tableName)
{
var inertable = MethodInfo.Invoke(Context, new object[] { objectValue });