Insertable.OffIdentity.PageSize

This commit is contained in:
sunkaixuan
2023-09-22 16:36:50 +08:00
parent c6ad1ddf02
commit fbd909aaa9
3 changed files with 18 additions and 4 deletions

View File

@@ -15,6 +15,7 @@ namespace SqlSugar
public List<string> InsertColumns { get; internal set; } public List<string> InsertColumns { get; internal set; }
public bool IsEnableDiffLogEvent { get; internal set; } public bool IsEnableDiffLogEvent { get; internal set; }
public DiffLogModel DiffModel { get; internal set; } public DiffLogModel DiffModel { get; internal set; }
public bool IsOffIdentity { get; internal set; }
public int ExecuteCommand() public int ExecuteCommand()
{ {
@@ -33,7 +34,7 @@ namespace SqlSugar
} }
this.Context.Utilities.PageEach(DataList, PageSize, pageItem => this.Context.Utilities.PageEach(DataList, PageSize, pageItem =>
{ {
result += this.Context.Insertable(pageItem).AS(TableName).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteCommand(); result += this.Context.Insertable(pageItem).AS(TableName).OffIdentity(IsOffIdentity).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteCommand();
}); });
if (isNoTran) if (isNoTran)
{ {
@@ -67,7 +68,7 @@ namespace SqlSugar
} }
await this.Context.Utilities.PageEachAsync(DataList, PageSize, async pageItem => await this.Context.Utilities.PageEachAsync(DataList, PageSize, async pageItem =>
{ {
result +=await this.Context.Insertable(pageItem).AS(TableName).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteCommandAsync(); result +=await this.Context.Insertable(pageItem).AS(TableName).OffIdentity(IsOffIdentity).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteCommandAsync();
}); });
if (isNoTran) if (isNoTran)
{ {
@@ -102,7 +103,7 @@ namespace SqlSugar
} }
this.Context.Utilities.PageEach(DataList, PageSize, pageItem => this.Context.Utilities.PageEach(DataList, PageSize, pageItem =>
{ {
result.AddRange(this.Context.Insertable(pageItem).AS(TableName).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteReturnSnowflakeIdList()); result.AddRange(this.Context.Insertable(pageItem).AS(TableName).OffIdentity(IsOffIdentity).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteReturnSnowflakeIdList());
}); });
if (isNoTran) if (isNoTran)
{ {
@@ -136,7 +137,7 @@ namespace SqlSugar
} }
await this.Context.Utilities.PageEachAsync(DataList, PageSize, async pageItem => await this.Context.Utilities.PageEachAsync(DataList, PageSize, async pageItem =>
{ {
result.AddRange(await this.Context.Insertable(pageItem).AS(TableName).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteReturnSnowflakeIdListAsync()); result.AddRange(await this.Context.Insertable(pageItem).AS(TableName).OffIdentity(IsOffIdentity).EnableDiffLogEventIF(IsEnableDiffLogEvent, DiffModel).InsertColumns(InsertColumns.ToArray()).ExecuteReturnSnowflakeIdListAsync());
}); });
if (isNoTran) if (isNoTran)
{ {

View File

@@ -474,6 +474,7 @@ namespace SqlSugar
result.TableName = this.InsertBuilder.AsName; result.TableName = this.InsertBuilder.AsName;
result.IsEnableDiffLogEvent = this.IsEnableDiffLogEvent; result.IsEnableDiffLogEvent = this.IsEnableDiffLogEvent;
result.DiffModel = this.diffModel; result.DiffModel = this.diffModel;
result.IsOffIdentity = this.InsertBuilder.IsOffIdentity;
if(this.InsertBuilder.DbColumnInfoList.Any()) if(this.InsertBuilder.DbColumnInfoList.Any())
result.InsertColumns = this.InsertBuilder.DbColumnInfoList.GroupBy(it => it.TableId).First().Select(it=>it.DbColumnName).ToList(); result.InsertColumns = this.InsertBuilder.DbColumnInfoList.GroupBy(it => it.TableId).First().Select(it=>it.DbColumnName).ToList();
return result; return result;
@@ -538,6 +539,17 @@ namespace SqlSugar
this.InsertBuilder.TableWithString = lockString; this.InsertBuilder.TableWithString = lockString;
return this; return this;
} }
public IInsertable<T> OffIdentity(bool isSetOn)
{
if (isSetOn)
{
return this.OffIdentity();
}
else
{
return this;
}
}
public IInsertable<T> OffIdentity() public IInsertable<T> OffIdentity()
{ {
this.IsOffIdentity = true; this.IsOffIdentity = true;

View File

@@ -62,6 +62,7 @@ namespace SqlSugar
void AddQueue(); void AddQueue();
IInsertable<T> MySqlIgnore(); IInsertable<T> MySqlIgnore();
IInsertable<T> OffIdentity(); IInsertable<T> OffIdentity();
IInsertable<T> OffIdentity(bool isSetOn);
InsertablePage<T> PageSize(int pageSize); InsertablePage<T> PageSize(int pageSize);
} }
} }