如何使用LINQ-To-Entities为每个项目选择最后一次审核?

时间:2014-02-09 17:08:05

标签: c# linq linq-to-entities

我是LINQ的新用户,我正在开发一个简单的购物系统。我现在正在尝试编写一个LINQ语句,该语句将检索数据库中每个项目的最后一次审核(基于审核日期)。我正在使用实体框架4使用Linq-To-Entities。我有以下表格:

Items Table: ID, Name,
UserReviews Table:  ID, Description, ReviewDate,  ItemID 

我想出了以下LINQ语句,但它向我展示了每个项目的所有评论,而不是显示每个项目的最后评论:

var query = from item in context.Items
            from review in context.UserReviews                                          
            where item.ID == review.ItemID
           && (review.ReviewDate >= fromDate.Date && review.ReviewDate <= toDate)
                                          select new
                                          {
                                              Name = item.Name,
                                              Review = review.Description,
                                              Date = review.ReviewDate
                                          };

所需结果的快照: enter image description here

你能告诉我怎么做吗?

1 个答案:

答案 0 :(得分:1)

您可以使用查询中的.Max函数获取最新评论:

var lastReview = query.Max(x => x.Date);