如何在linq中对十进制值进行排序

-1 c# linq

数据:

14.20
15.50
16.70
Run Code Online (Sandbox Code Playgroud)

代码:

 getProductWithAllFiltersResponse
    .getProductWithAllFilters
    .OrderBy(x => x.ProductCustomModel.OrderBy(y => y.PriceWithDiscount))
    .ToList();
Run Code Online (Sandbox Code Playgroud)

我无法排序由PriceWithDiscount

Dmi*_*nko 5

您不能按光标( IQueryable<T>, IEnumerable<T>)排序:

 .OrderBy(x => x.ProductCustomModel.OrderBy(y => y.PriceWithDiscount))
Run Code Online (Sandbox Code Playgroud)

想象一下,这会为每个产品x.ProductCustomModel.OrderBy(y => y.PriceWithDiscount)返回7项目。那我们应该如何对产品进行分类呢?您可能想要这样的东西:

 var result = getProductWithAllFiltersResponse
   .getProductWithAllFilters
   .OrderBy(x => x.ProductCustomModel.Min(y => y.PriceWithDiscount))
   .ToList();
Run Code Online (Sandbox Code Playgroud)

我们按最好的( Min) 价格和折扣排序