所有实体的EF CORE Orderby查询策略

时间:2018-12-16 18:42:27

标签: c# entity-framework-core ef-core-2.1

我喜欢ef核心中的查询文件器,但是是否有任何办法可以为 OrderBy 使用此功能?
例如:

builder.Entity<Product>().HasOrderbyDescendingStrategy(p => p.Date);

具有针对数据库的所有查询的orderby子句。

1 个答案:

答案 0 :(得分:0)

在OnModelCreating中,您可以指定按批注对属性进行排序。

modelBuilder.Entity<Product>().Property(p =>p.Date).HasColumnAnnotation(OrderConstants.OrderProperty, OrderConstants.Ascending);

或者您可以为此编写扩展方法

public static PrimitivePropertyConfiguration IsDefaultSort(this PrimitivePropertyConfiguration property)
{
  property.HasColumnAnnotation(OrderConstants.OrderProperty, OrderConstants.Ascending);
  return property;
}

并使用它

 modelBuilder.Entity<Product>().Property(p =>p.Date).IsDefaultSort();

Reference