Any idea why this line
var guild = _context.Guilds.Include(x => x.Heroes).Single(x => x.Id == 1); Will leave heroes null on the guild but if I do this first
var heroes = _context.Heroes.ToList(); var guild = _context.Guilds.Include(x => x.Heroes).Single(x => x.Id == 1); Then heroes on the guild object has been included and now works fine?
DbContext
public class TestContext : DbContext { public TestContext(DbContextOptions options) : base(options) { } public DbSet<Guild> Guilds { get; set; } public DbSet<Hero> Heroes { get; set; } } public class Hero : IEntity { public int Id { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public string AvatarId { get; set; } } public class Guild : IEntity { public int Id { get; set; } public string Name { get; set; } public string UserId { get; set; } public List<Hero> Heroes { get; set; } public void AddHeroes(IEnumerable<Hero> heroes) { foreach (var hero in heroes) { Heroes.Add(hero); } } }
HerotoGuild? You need aGuildIdinHero