Synchronous code

This commit is contained in:
sunkaixuan
2025-05-13 14:51:59 +08:00
parent 455229f66b
commit fccca944f6
5 changed files with 27 additions and 5 deletions

View File

@@ -761,6 +761,7 @@ namespace SqlSugar
result.Helper = helper; result.Helper = helper;
result.SplitType = splitType; result.SplitType = splitType;
result.TableNames = new List<KeyValuePair<string, object>>(); result.TableNames = new List<KeyValuePair<string, object>>();
result.MySqlIgnore = this.InsertBuilder.MySqlIgnore;
foreach (var item in this.InsertObjs) foreach (var item in this.InsertObjs)
{ {
var splitFieldValue = helper.GetValue(splitType, item); var splitFieldValue = helper.GetValue(splitType, item);

View File

@@ -15,6 +15,7 @@ namespace SqlSugar
public SplitType SplitType; public SplitType SplitType;
internal IInsertable<T> Inserable { get; set; } internal IInsertable<T> Inserable { get; set; }
internal List<KeyValuePair<string,object>> TableNames { get; set; } internal List<KeyValuePair<string,object>> TableNames { get; set; }
internal bool MySqlIgnore { get; set; }
public int ExecuteCommand() public int ExecuteCommand()
{ {
@@ -139,6 +140,7 @@ namespace SqlSugar
groupInserable.IsEnableDiffLogEvent = parent.IsEnableDiffLogEvent; groupInserable.IsEnableDiffLogEvent = parent.IsEnableDiffLogEvent;
groupInserable.InsertBuilder.IsNoInsertNull = parent.InsertBuilder.IsNoInsertNull; groupInserable.InsertBuilder.IsNoInsertNull = parent.InsertBuilder.IsNoInsertNull;
groupInserable.IsOffIdentity = parent.IsOffIdentity; groupInserable.IsOffIdentity = parent.IsOffIdentity;
groupInserable.InsertBuilder.MySqlIgnore = this.MySqlIgnore;
result += groupInserable.AS(item.Key).InsertColumns(names.ToArray()).ExecuteCommand(); result += groupInserable.AS(item.Key).InsertColumns(names.ToArray()).ExecuteCommand();
} }
return result; return result;
@@ -162,7 +164,8 @@ namespace SqlSugar
groupInserable.diffModel = parent.diffModel; groupInserable.diffModel = parent.diffModel;
groupInserable.IsEnableDiffLogEvent = parent.IsEnableDiffLogEvent; groupInserable.IsEnableDiffLogEvent = parent.IsEnableDiffLogEvent;
groupInserable.InsertBuilder.IsNoInsertNull = parent.InsertBuilder.IsNoInsertNull; groupInserable.InsertBuilder.IsNoInsertNull = parent.InsertBuilder.IsNoInsertNull;
groupInserable.IsOffIdentity = parent.IsOffIdentity; groupInserable.IsOffIdentity = parent.IsOffIdentity;
groupInserable.InsertBuilder.MySqlIgnore = this.MySqlIgnore;
result +=await groupInserable.AS(item.Key).InsertColumns(names.ToArray()).ExecuteCommandAsync(); result +=await groupInserable.AS(item.Key).InsertColumns(names.ToArray()).ExecuteCommandAsync();
} }
return result; return result;

View File

@@ -249,6 +249,11 @@ namespace SqlSugar
#region Result #region Result
public void IntoTable(Type type, string tableName)
{
var method = QueryableObj.GetType().GetMyMethod("IntoTable", 2, typeof(Type), typeof(string));
var reslt = method.Invoke(QueryableObj, new object[] { type, tableName });
}
public object ToPageList(int pageNumber, int pageSize) public object ToPageList(int pageNumber, int pageSize)
{ {
var method = QueryableObj.GetType().GetMyMethod("ToPageList", 2, typeof(int), typeof(int)); var method = QueryableObj.GetType().GetMyMethod("ToPageList", 2, typeof(int), typeof(int));

View File

@@ -89,6 +89,19 @@ namespace SqlSugar
result.Method = method; result.Method = method;
return result; return result;
} }
public StorageableSplitTableMethodInfo WhereColumns(string[] strings)
{
object objectValue = null;
MethodInfo method = GetSaveMethod(ref objectValue);
if (method == null) return new StorageableSplitTableMethodInfo(null);
method = objectValue.GetType().GetMyMethod("WhereColumns", 1, typeof(string[]));
objectValue = method.Invoke(objectValue, new object[] { strings });
StorageableSplitTableMethodInfo result = new StorageableSplitTableMethodInfo(null);
result.ObjectValue = objectValue;
result.Method = method;
return result;
}
} }
public class StorageableAsMethodInfo public class StorageableAsMethodInfo

View File

@@ -677,7 +677,7 @@ namespace SqlSugar
} }
return this; return this;
} }
public IUpdateable<T> SetColumns(string fieldName, object fieldValue) public virtual IUpdateable<T> SetColumns(string fieldName, object fieldValue)
{ {
ThrowUpdateByObject(); ThrowUpdateByObject();
var columnInfo = this.EntityInfo.Columns.FirstOrDefault(it => it.PropertyName.EqualCase(fieldName)); var columnInfo = this.EntityInfo.Columns.FirstOrDefault(it => it.PropertyName.EqualCase(fieldName));
@@ -726,7 +726,7 @@ namespace SqlSugar
return this; return this;
} }
} }
public IUpdateable<T> SetColumns(Expression<Func<T, object>> filedNameExpression, Expression<Func<T, object>> valueExpression) public virtual IUpdateable<T> SetColumns(Expression<Func<T, object>> filedNameExpression, Expression<Func<T, object>> valueExpression)
{ {
if (valueExpression == null) if (valueExpression == null)
{ {
@@ -752,13 +752,13 @@ namespace SqlSugar
} }
return this; return this;
} }
public IUpdateable<T> SetColumns(Expression<Func<T, object>> filedNameExpression, object fieldValue) public virtual IUpdateable<T> SetColumns(Expression<Func<T, object>> filedNameExpression, object fieldValue)
{ {
var name= UpdateBuilder.GetExpressionValue(filedNameExpression,ResolveExpressType.FieldSingle).GetString(); var name= UpdateBuilder.GetExpressionValue(filedNameExpression,ResolveExpressType.FieldSingle).GetString();
name = UpdateBuilder.Builder.GetNoTranslationColumnName(name); name = UpdateBuilder.Builder.GetNoTranslationColumnName(name);
return SetColumns(name, fieldValue); return SetColumns(name, fieldValue);
} }
public IUpdateable<T> SetColumns(Expression<Func<T, T>> columns) public virtual IUpdateable<T> SetColumns(Expression<Func<T, T>> columns)
{ {
ThrowUpdateByObject(); ThrowUpdateByObject();
var expResult = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.Update); var expResult = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.Update);