我正在使用ASP.NET Core 2.1 API应用程序和EF Core 2.1
我与电影和演员之间存在多对多关系,生成的列MovieActors具有电影ID和演员ID。
我需要返回一个电影列表,该电影不返回所有属性,而仅返回posterUrl和release。它还必须返回一个列表,其中包含每个电影对应的演员ID。
我有这样的东西
var movies = _context.Movies
// Actors
.Include(ma => ma.Actors)
.ThenInclude(a => a.ActorId)
.AsNoTracking()
.AsQueryable();
这行不通,因为它说ActorId不是导航属性。
我如何仅包括演员ID(而不是整个演员),并且仅选择posterUrl并从电影中放行。
答案 0 :(得分:1)
var movies = _context.Movies
.Select(m => new {m.MovieName,
m.MovieYear,
...,
Actors = m.MovieActors.Select(ma => ma.ActorId)})
.AsNoTracking()
.AsQueryable();