首页 > 解决方案 > 如何为具有多对多关系的数据编写get方法

问题描述

我有两个通过多对多关系连接的实体。

一级:

 public class Movie
 {
     public int Id { get; set; }
     public string Title { get; set; }

     public List<MovieActor> MovieActor { get; set; }
 }

二等:

 public class Actor
 {
     public int Id { get; set; }
     public string Name { get; set; }

     public List<MovieActor> MovieActor { get; set; }
 }

和关系(多对多):

public class MovieActor
 {
     public int MovieId { get; set; }
     public Movie Movie { get; set; }

     public int ActorId { get; set; }
     public Actor Actor { get; set; }
 }

我想写一个IEnumerable<Movie> GetMovies(int actorId)方法,它以演员的id作为参数。我希望该方法返回具有给定 ID 的演员在其中播放的电影列表。我怎样才能做到这一点?

标签: c#asp.net-core

解决方案


您不需要 MovieActor 类

改成:

public class Movie
 {
     public int Id { get; set; }
     public string Title { get; set; }

     public List<Actor> Actors { get; set; }
 }

 public class Actor
 {
     public int Id { get; set; }
     public string Name { get; set; }

     public List<Movie> Movies { get; set; }
 }

然后您可以选择演员,并且您将电影列表作为演员的属性。


推荐阅读