Entity Framework dbcontext 在 foreach 循环期间崩溃

Entity Framework dbcontext crashing during foreach loop

我有一个 asp.net 核心 mvc 项目。我正在尝试使用 entity framework 从 table(s) 中获取超过 300 条记录。以下是我拥有的模型:

  public partial class Movies
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public virtual MovieInfoes MovieInfoes { get; set; }
    }

    public partial class MovieInfoes
    {
        public int Id { get; set; }
        public string Actors { get; set; }
        public string Director { get; set; }
        public virtual Movies IdNavigation { get; set; }
    }

在控制器部分,我有一个要列出标题、演员和导演数据的操作。

 public IActionResult ListAllMovies()
    {
        var movies = context.Movies.Include("MovieInfoes").ToList();
        foreach (var movie in movies)
        {
            string x = movie.MovieInfoes.Actors;
        }
        return View(movies);
    }

出于某种原因,它在迭代 19 条记录后崩溃(我正在尝试迭代 300 多条记录)。我收到一条错误消息 "NullReferenceException: Object reference not set to an instance of an object"。

注意:我尝试过延迟加载和预加载,两种方式都会导致相同的错误。

您可能正在尝试使用具有 null MovieInfoes 引用的 movie 实例访问 movie.MovieInfoes.Actors

通过将 string x = movie.MovieInfoes.Actors; 更改为 string x = movie?.MovieInfoes?.Actors;

,尝试使用 null-conditional operator 访问 Actors