mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-07-15 14:04:44 +08:00
Performance optimization
This commit is contained in:
parent
2f5b819235
commit
279aeb5a5b
@ -113,7 +113,10 @@ namespace SqlSugar
|
||||
{
|
||||
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;
|
||||
@ -125,6 +128,7 @@ namespace SqlSugar
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
public async Task<int> ValuesExecuteCommandAsync()
|
||||
{
|
||||
int result = 0;
|
||||
@ -150,6 +154,24 @@ namespace SqlSugar
|
||||
return result;
|
||||
}
|
||||
#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)
|
||||
{
|
||||
var itemable = this.Context.Insertable(items);
|
||||
|
Loading…
Reference in New Issue
Block a user