Performance optimization

This commit is contained in:
sunkaixuna
2022-01-05 19:49:37 +08:00
parent 8c1d744fd3
commit 644c069976
3 changed files with 11 additions and 11 deletions

View File

@@ -441,12 +441,12 @@ namespace SqlSugar
return string.Format(temp, sql.ToString(), (pageIndex - 1) * pageSize + 1, pageIndex * pageSize);
}
public virtual string GetSelectByItems(List<KeyValuePair<string, object>> items)
public virtual string GetSelectByItems(List<KeyValuePair<string, JoinMapper>> items)
{
var array = items.Select(it => {
dynamic dynamicObj = this.Context.Utilities.DeserializeObject<dynamic>(this.Context.Utilities.SerializeObject(it.Value));
var dbName = Builder.GetTranslationColumnName((string)(dynamicObj.dbName));
var asName = Builder.GetTranslationColumnName((string)(dynamicObj.asName));
JoinMapper dynamicObj = it.Value;
var dbName = Builder.GetTranslationColumnName(dynamicObj.DbName);
var asName = Builder.GetTranslationColumnName(dynamicObj.AsName);
return string.Format("{0}.{1} AS {2}", it.Key, dbName, asName);
});
return string.Join(",", array);

View File

@@ -6,9 +6,9 @@ using System.Threading.Tasks;
namespace SqlSugar
{
internal class JoinMapper
public class JoinMapper
{
public string asName { get; set; }
public string dbName { get; set; }
public string AsName { get; set; }
public string DbName { get; set; }
}
}

View File

@@ -19,7 +19,7 @@ namespace SqlSugar
string result = string.Empty;
var veiwModel = _context.EntityMaintenance.GetEntityInfo<TResult>();
var exp = (queryBuilder.JoinExpression as LambdaExpression);
List<KeyValuePair<string, object>> selectItems = new List<KeyValuePair<string, object>>();
List<KeyValuePair<string, JoinMapper>> selectItems = new List<KeyValuePair<string, JoinMapper>>();
var exParsmeters = exp.Parameters.Select(it => new { shortName = it.Name, type = it.Type }).ToList();
foreach (var viewColumns in veiwModel.Columns)
{
@@ -54,10 +54,10 @@ namespace SqlSugar
{
JoinMapper joinMapper = new JoinMapper()
{
asName=viewColumns.PropertyName,
dbName=columnInfo.it.DbColumnName
AsName=viewColumns.PropertyName,
DbName=columnInfo.it.DbColumnName
};
selectItems.Add(new KeyValuePair<string, object>(expPars.shortName,joinMapper));
selectItems.Add(new KeyValuePair<string, JoinMapper>(expPars.shortName,joinMapper));
isbreak = true;
}
}