如何使用连接实体(链接表)在 EF Core 5.x 中的实体之间添加多个多对多关系?
我理解的是Card和Game之间的两种多对多的关系。一种关系不是问题,但两种(或更多)关系我无法正确配置。
目前对我有用的是,我创建了两个不同的类 DeckGameCard 和 TableGameCard(连接实体),这迫使 EF 创建两个表。除了名称之外,这些类都是相同的。数据库中是否可以只有一个类(连接实体)和两个链接表?
我想要的是这样的:
public class Game
{
[Key]
public int Id { get; set; }
public ICollection<GameCard> Deck { get; set; }
public ICollection<GameCard> OnTable { get; set; }
...
Run Code Online (Sandbox Code Playgroud)
但目前这(下面的代码)是我的解决方案(不是最佳的,因为 DeckGameCard 和 TableGameCard 中的代码重复)。
public class DeckGameCard
{
public int GameId { get; set; }
public Game Game { get; set; }
public int Order { get; set; }
public int CardId { get; set; }
public Card Card …Run Code Online (Sandbox Code Playgroud)