public class Game
{
public long Id { get; set; }
public DateTime Date { get; set; }
public virtual Team HomeTeam { get; set; }
public virtual Team AwayTeam { get; set; }
public virtual Lineup HomeLineup { get; set; }
public virtual Lineup AwayLineup { get; set; }
public int Spectators { get; set; }
public virtual List<Goal> Goals { get; set; }
public override string ToString()
{
return base.ToString();
}
}
Я пытаюсь запросить эту игровую таблицу, внешние ключи виртуальных объявленных атрибутов вставляются правильно, но когда я пытаюсь запросить игровую таблицу, каждый объект внешнего ключа равен нулю, поэтому отложенная загрузка не выглядит работать.
ОДНАКО при первом запуске приложения, когда я вставляю новые данные в базу данных, оно работает. Когда я перезапускаю приложение, все объекты внешнего ключа равны нулю, примитивные типы данных все еще работают.
Я запрашиваю так:
try
{
var context = services.GetRequiredService<ManagerContext>();
DbInitializer.Initialize(context, logger);
List<Game> games = context.Games.ToList<Game>();
if(games[0] != null)
{
GameSimulation.SimulateGame(games[0], logger);
}
}
catch(Exception ex)
{
logger.LogError(ex, "Fehler beim Erstellen von Testdaten!");
}