Entity Framework Coreで以下のように1対多の関係を持つクラスがあります。 Parent.ParentIdが外部キーです。 コントローラーのGetメソッドでParentの配列を取得する際にChild.nameを含んで取得する方法を教えて下さい。
public class Parent { public string name; public List childs; }
public class Child { public int id; public int ParentId; public string name; public Parent parent; }
using Microsoft.EntityFrameworkCore;
public class ParentController : Controller { private readonly YourDbContext _context;
public ParentController(YourDbContext context) {
_context = context;
}
public async Task<IActionResult> GetParents() {
var parents = await _context.Parents
.Include(p => p.Childs)
.Select(p => new {
p.Name,
ChildNames = p.Childs.Select(c => c.Name).ToList()
})
.ToListAsync();
return Ok(parents);
}
}