我是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
};
所需结果的快照:
你能告诉我怎么做吗?
答案 0 :(得分:1)
您可以使用查询中的.Max
函数获取最新评论:
var lastReview = query.Max(x => x.Date);