我有一个linq查询,它使用Entity Framework Core从数据库中获取一些记录,如下所示:
var result = (from users in _context.Users
on ratings in _context.Ratings on ratings.UserId = users.Id
select new
{
FirstName = users.FirstName,
LastName = users.LastName,
Rating = ratings.Rating
}
).ToList();
这给了我类似的东西
John Doe 7
John Doe 4
John Doe 8
John Doe 9
John Doe 7
但是我希望它像这样记录在其中:
John Doe 7 4 8 9 7
结果可以是通过Web api在Json中返回的匿名类型。
使用上面的查询是否有可能?或者之后是否需要使用foreach循环进行一些处理?
答案 0 :(得分:0)
您可以使用LINQ的函数语法来实现此目的,因为User
对象应该具有ICollection<Rating>
的导航属性。
var users = _context.Users
.Include(x => x.Ratings)
.Select(x => new {
FirstName = x.FirstName,
LastName = x.LastName,
Ratings = x.Ratings
}
);