小编and*_*ner的帖子

.OrderBy() / .OrderByDescending() 和 .FirstOrDefault()/.First()

我有名为“product”的表的结果列表。

Id      User    ProductName     ArrivalDate
----    -----   ------------    ------------
1       James   Shoes           05/07/2016
2       Jenny   TShirt          05/01/2018
3       James   Pants           13/05/2017
Run Code Online (Sandbox Code Playgroud)

我想根据 ArrivalDate 按降序对结果进行排序,其中 User 是“James”,这意味着它应该将第三行结果返回给我。但是,如果我这样做:

return List(spec).OrderByDescending(x=>x.ArrivalDate).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

我得到的结果仍然是第一个,如果有人可以对此进行指导,请感谢。下面是示例代码:

public class EfRepository<T> : IRepository<T>, IAsyncRepository<T> where T : BaseEntity
{
    public T GetSingleBySpec(ISpecification<T> spec)
    {
        return List(spec).FirstOrDefault();
    }
}

public class ProductSpecification : BaseSpecification<NewProducts>
{
    public ProductSpecification(string User)
    : base(b => b.User == User) //User = James
    {

    }
}

public class ProductService : IProductService
{
    public void getOrderProductDetails
    { …
Run Code Online (Sandbox Code Playgroud)

c# linq asp.net entity-framework web-services

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

asp.net ×1

c# ×1

entity-framework ×1

linq ×1

web-services ×1