Update .net core project

This commit is contained in:
sunkaixuan 2022-06-14 12:55:52 +08:00
parent be957e0a1a
commit eec3f49f5f
9 changed files with 33 additions and 3 deletions

View File

@ -184,8 +184,12 @@ namespace SqlSugar
{
var expResult = DeleteBuilder.GetExpressionValue(expression, ResolveExpressType.WhereSingle);
var whereString = expResult.GetResultString();
if (expression.ToString().Contains("Subqueryable()")){
whereString = whereString.Replace(this.SqlBuilder.GetTranslationColumnName(expression.Parameters.First().Name) + ".",this.SqlBuilder.GetTranslationTableName(this.EntityInfo.DbTableName) + ".");
if (expression.ToString().Contains("Subqueryable()")) {
whereString = whereString.Replace(this.SqlBuilder.GetTranslationColumnName(expression.Parameters.First().Name) + ".", this.SqlBuilder.GetTranslationTableName(this.EntityInfo.DbTableName) + ".");
}
else if (expResult.IsNavicate)
{
whereString = whereString.Replace(expression.Parameters.First().Name + ".", this.SqlBuilder.GetTranslationTableName(this.EntityInfo.DbTableName) + ".");
}
DeleteBuilder.WhereInfos.Add(whereString);
return this;

View File

@ -213,6 +213,10 @@ namespace SqlSugar
dataTable.TableName = this.queryable.SqlBuilder.GetTranslationTableName(tableName);
DataTable dt = GetCopyWriteDataTable(dataTable);
IFastBuilder buider = GetBuider();
if (dt.Columns.Count != dataTable.Columns.Count)
{
ActionIgnoreColums(whereColumns, updateColumns, dt, buider.IsActionUpdateColumns);
}
buider.Context = context;
await buider.CreateTempAsync<object>(dt);
await buider.ExecuteBulkCopyAsync(dt);

View File

@ -154,6 +154,7 @@ namespace SqlSugar
{
resolveExpress.PgSqlIsAutoToLower = true;
}
resolveExpress.SugarContext = new ExpressionOutParameter() { Context = this.Context };
resolveExpress.MappingColumns = Context.MappingColumns;
resolveExpress.MappingTables = Context.MappingTables;
resolveExpress.IgnoreComumnList = Context.IgnoreColumns;

View File

@ -142,6 +142,7 @@ namespace SqlSugar
resolveExpress.IgnoreComumnList = Context.IgnoreColumns;
resolveExpress.SqlFuncServices = Context.CurrentConnectionConfig.ConfigureExternalServices == null ? null : Context.CurrentConnectionConfig.ConfigureExternalServices.SqlFuncServices;
};
resolveExpress.SugarContext = new ExpressionOutParameter() { Context = this.Context };
resolveExpress.Resolve(expression, resolveType);
this.Parameters.AddRange(resolveExpress.Parameters);
var result = resolveExpress.Result;

View File

@ -416,6 +416,10 @@ namespace SqlSugar
{
whereString = whereString.Replace(this.SqlBuilder.GetTranslationColumnName(expression.Parameters.First().Name) + ".", this.SqlBuilder.GetTranslationTableName(this.EntityInfo.DbTableName) + ".");
}
else if (expResult.IsNavicate)
{
whereString = whereString.Replace(expression.Parameters.First().Name + ".", this.SqlBuilder.GetTranslationTableName(this.EntityInfo.DbTableName) + ".");
}
UpdateBuilder.WhereValues.Add(whereString);
return this;
}

View File

@ -9,6 +9,7 @@ namespace SqlSugar
{
public bool IsLockCurrentParameter { get; set; }
public bool IsUpper { get; set; }
public bool IsNavicate { get; set; }
private ExpressionParameter _CurrentParameter;
public ExpressionParameter CurrentParameter
{

View File

@ -682,7 +682,16 @@ namespace SqlSugar
}
return result; ;
}
protected void SetNavigateResult()
{
if (this.Context != null)
{
if (this.Context.Result != null)
{
this.Context.Result.IsNavicate = true;
}
}
}
private string GetAsName(Expression item, object shortName, PropertyInfo property)
{
string asName;

View File

@ -76,6 +76,7 @@ namespace SqlSugar
if (nav.IsNavgate(expression))
{
var value = nav.GetSql();
SetNavigateResult();
this.Context.SingleTableNameSubqueryShortName = nav.ShorName;
if (isSetTempData)
{
@ -89,6 +90,7 @@ namespace SqlSugar
else if (navN.IsNavgate(expression))
{
var value = navN.GetMemberSql();
SetNavigateResult();
this.Context.SingleTableNameSubqueryShortName = navN.shorName;
if (isSetTempData)
{

View File

@ -248,6 +248,7 @@ namespace SqlSugar
if (nav.IsNavgate(express))
{
var sql = nav.GetSql();
SetNavigateResult();
this.Context.SingleTableNameSubqueryShortName = nav.ShorName;
base.AppendValue(parameter, isLeft, sql);
return;
@ -257,6 +258,7 @@ namespace SqlSugar
if (nav2.IsNavgate(express))
{
var sql = nav2.GetSql();
SetNavigateResult();
this.Context.SingleTableNameSubqueryShortName = nav2.shorName;
base.AppendValue(parameter, isLeft, sql);
return;
@ -293,6 +295,8 @@ namespace SqlSugar
}
}
private void NativeExtensionMethod(ExpressionParameter parameter, MethodCallExpression express, bool? isLeft, string name, List<MethodCallExpressionArgs> appendArgs = null)
{
var method = express.Method;