Просмотр исходного кода

指定排序列对应表的别名,解决连表查询时,排序列如果在多个表存在会异常

yhli 3 лет назад
Родитель
Сommit
41d6976638
1 измененных файлов с 3 добавлено и 3 удалено
  1. 3 3
      Admin.NET/Admin.NET.Core/Extension/RepositoryExtension.cs

+ 3 - 3
Admin.NET/Admin.NET.Core/Extension/RepositoryExtension.cs

@@ -94,10 +94,10 @@ public static class RepositoryExtension
         if (!string.IsNullOrEmpty(nowPagerInput.Field) && !string.IsNullOrEmpty(nowPagerInput.Order))
         {
             var col = queryable.Context.EntityMaintenance.GetEntityInfo<T>().Columns
-                .FirstOrDefault(u => u.PropertyName.Equals(nowPagerInput.Field, StringComparison.CurrentCultureIgnoreCase));
+               .FirstOrDefault(u => u.PropertyName.Equals(nowPagerInput.Field, StringComparison.CurrentCultureIgnoreCase));
             orderStr = col != null
-                ? $"{col.DbColumnName} {(nowPagerInput.Order == nowPagerInput.DescStr ? "Desc" : "Asc")}"
-                : $"{nowPagerInput.Field} {(nowPagerInput.Order == nowPagerInput.DescStr ? "Desc" : "Asc")}";
+                ? $"{prefix}{col.DbColumnName} {(nowPagerInput.Order == nowPagerInput.DescStr ? "Desc" : "Asc")}"
+                : $"{prefix}{nowPagerInput.Field} {(nowPagerInput.Order == nowPagerInput.DescStr ? "Desc" : "Asc")}";
         }
         return queryable.OrderByIF(!string.IsNullOrWhiteSpace(orderStr), orderStr);
     }