Update db.Select(exp,true)

This commit is contained in:
sunkaixuan
2022-11-27 13:40:04 +08:00
parent 6bda78f3df
commit 19d39484e5
3 changed files with 18 additions and 2 deletions

View File

@@ -884,9 +884,9 @@ namespace SqlSugar
var parameterName = parameters[parameterIndex1]; var parameterName = parameters[parameterIndex1];
foreach (var item in columns) foreach (var item in columns)
{ {
if (item.IsIgnore == false && columnsResult.Any(it => it.PropertyName == item.PropertyName) && !sql.Contains(SqlBuilder.GetTranslationColumnName(item.PropertyName))) if (item.IsIgnore == false && columnsResult.Any(it => it.PropertyName.EqualCase(item.PropertyName)) && !sql.ToLower().Contains(SqlBuilder.GetTranslationColumnName(item.PropertyName.ToLower())))
{ {
sql = $" {sql},{parameterName.Name}.{item.DbColumnName} AS {item.PropertyName} "; sql = $" {sql},{parameterName.Name}.{SqlBuilder.GetTranslationColumnName(item.DbColumnName)} AS {SqlBuilder.GetTranslationColumnName(item.PropertyName)} ";
} }
} }

View File

@@ -818,6 +818,21 @@ namespace SqlSugar
#endregion #endregion
#region Select #region Select
public ISugarQueryable<TResult> Select<TResult>(Expression<Func<T, T2,T3, TResult>> expression, bool isAutoFill)
{
var sql = this.Clone().Select(expression).QueryBuilder.GetSelectValue;
if (this.QueryBuilder.IsSingle() || string.IsNullOrEmpty(sql) || sql.Trim() == "*")
{
return this.Select<TResult>(expression);
}
var parameters = (expression as LambdaExpression).Parameters;
var columnsResult = this.Context.EntityMaintenance.GetEntityInfo<TResult>().Columns;
sql = AppendSelect<T>(sql, parameters, columnsResult, 0);
sql = AppendSelect<T2>(sql, parameters, columnsResult, 1);
sql = AppendSelect<T3>(sql, parameters, columnsResult, 2);
return this.Select<TResult>(sql);
}
public ISugarQueryable<TResult> Select<TResult>(Expression<Func<T, T2, T3, TResult>> expression) public ISugarQueryable<TResult> Select<TResult>(Expression<Func<T, T2, T3, TResult>> expression)
{ {
return _Select<TResult>(expression); return _Select<TResult>(expression);

View File

@@ -360,6 +360,7 @@ namespace SqlSugar
#endregion #endregion
#region Select #region Select
ISugarQueryable<TResult> Select<TResult>(Expression<Func<T, T2,T3, TResult>> expression, bool isAutoFill);
ISugarQueryable<TResult> Select<TResult>(Expression<Func<T, T2, TResult>> expression); ISugarQueryable<TResult> Select<TResult>(Expression<Func<T, T2, TResult>> expression);
ISugarQueryable<TResult> Select<TResult>(Expression<Func<T, T2, T3, TResult>> expression); ISugarQueryable<TResult> Select<TResult>(Expression<Func<T, T2, T3, TResult>> expression);
#endregion #endregion