Synchronization code

This commit is contained in:
sunkaixuan 2023-12-13 02:39:47 +08:00
parent 279aeb5a5b
commit baeb43a485
2 changed files with 31 additions and 8 deletions

View File

@ -113,7 +113,10 @@ namespace SqlSugar
{ {
identityList = new string[] { }; identityList = new string[] { };
} }
this.Context.Utilities.PageEach(objects, 100, pagelist => var pageSize = 100;
var count = inserable.EntityInfo.Columns.Count();
pageSize = GetPageSize(pageSize, count);
this.Context.Utilities.PageEach(objects, pageSize, pagelist =>
{ {
StringBuilder batchInsetrSql; StringBuilder batchInsetrSql;
@ -125,6 +128,7 @@ namespace SqlSugar
return result; return result;
} }
public async Task<int> ValuesExecuteCommandAsync() public async Task<int> ValuesExecuteCommandAsync()
{ {
int result = 0; int result = 0;
@ -150,6 +154,24 @@ namespace SqlSugar
return result; return result;
} }
#region Values Helper #region Values Helper
private static int GetPageSize(int pageSize, int count)
{
if (pageSize * count > 2100)
{
pageSize = 50;
}
if (pageSize * count > 2100)
{
pageSize = 20;
}
if (pageSize * count > 2100)
{
pageSize = 10;
}
return pageSize;
}
private void GetInsertValues(string[] identitys, List<string> columns, string tableWithString, Action removeCacheFunc, List<T> items, out StringBuilder batchInsetrSql, List<SugarParameter> allParamter) private void GetInsertValues(string[] identitys, List<string> columns, string tableWithString, Action removeCacheFunc, List<T> items, out StringBuilder batchInsetrSql, List<SugarParameter> allParamter)
{ {
var itemable = this.Context.Insertable(items); var itemable = this.Context.Insertable(items);

View File

@ -325,6 +325,7 @@ namespace SqlSugar
foreach (var column in EntityInfo.Columns) foreach (var column in EntityInfo.Columns)
{ {
if (column.IsIgnore) continue; if (column.IsIgnore) continue;
Check.ExceptionEasy(item == null, "db.Updateable(data) data is required ", "db.Updateable(data) data不能是null");
var columnInfo = new DbColumnInfo() var columnInfo = new DbColumnInfo()
{ {
Value = column.PropertyInfo.GetValue(item, null), Value = column.PropertyInfo.GetValue(item, null),