mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-05-16 13:09:33 +08:00
Optimize single table query select dto
This commit is contained in:
parent
caa04cf787
commit
861ebddecb
@ -1059,6 +1059,30 @@ namespace SqlSugar
|
||||
else
|
||||
{
|
||||
var selects = this.QueryBuilder.GetSelectValueByString();
|
||||
if (selects.ObjToString().ToLower().IsContainsIn(".","("," as "))
|
||||
{
|
||||
return this.Select<TResult>(selects);
|
||||
}
|
||||
var resultColumns=this.Context.EntityMaintenance.GetEntityInfo<TResult>().Columns;
|
||||
var dbColumns = this.EntityInfo.Columns.Where(it=>!it.IsIgnore);
|
||||
StringBuilder sb = new StringBuilder();
|
||||
foreach (var item in resultColumns)
|
||||
{
|
||||
var firstColumn= dbColumns.FirstOrDefault(z =>
|
||||
z.PropertyName.EqualCase(item.PropertyName) ||
|
||||
z.DbColumnName.EqualCase(item.PropertyName));
|
||||
if (firstColumn != null)
|
||||
{
|
||||
var dbColumnName = firstColumn.DbColumnName;
|
||||
var AsName = item.PropertyName;
|
||||
sb.Append($"{this.SqlBuilder.GetTranslationColumnName(dbColumnName)} AS {AsName} ,");
|
||||
}
|
||||
}
|
||||
selects = sb.ToString().TrimEnd(',');
|
||||
if (selects == "")
|
||||
{
|
||||
selects = "*";
|
||||
}
|
||||
return this.Select<TResult>(selects);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user