我正在尝试获取产品列表以及它们的评分、评论和浏览量。PID是没有外键关系的产品ID列。
产品 -
Id Name
1 P1
2 P2
评分 -
Id PID Rating
1 1 5
2 1 4
3 2 3
评论 -
Id PID Comment
1 1 Good
2 1 Average
3 2 Bad
Views -
Id PID View
1 1 500
2 1 200
3 2 10
我的课程大纲如下 -
Public Class Product{
public int Id { get; set; }
public string Name { get; set; }
public List<Rating> Ratings{ get; set; }
public List<Comments> Comments{ get; set; }
public List<Views> Views{ get; set; }
}
我正在尝试使用Linq分组连接获取这些信息,以便获得子集合。
IEnumerable<Product> _products = _context.Product.GroupJoin(_context.Rating, p=>p.id, r=>r.PID, (Product, Rating) => new Product(){
//fill fields here
});
但是如何将其他表也组合到单个数据库查询中呢?
谢谢。