Сначала я только начал использовать код EF, так что я новичок в этой теме.
Я хотел создать отношения между командами и совпадениями:
1 совпадение = 2 команды (дома, в гостях) и результат.
Я подумал, что такую модель легко создать, поэтому я начал кодировать:
public class Team
{
[Key]
public int TeamId { get; set;}
public string Name { get; set; }
public virtual ICollection<Match> Matches { get; set; }
}
public class Match
{
[Key]
public int MatchId { get; set; }
[ForeignKey("HomeTeam"), Column(Order = 0)]
public int HomeTeamId { get; set; }
[ForeignKey("GuestTeam"), Column(Order = 1)]
public int GuestTeamId { get; set; }
public float HomePoints { get; set; }
public float GuestPoints { get; set; }
public DateTime Date { get; set; }
public virtual Team HomeTeam { get; set; }
public virtual Team GuestTeam { get; set; }
}
И я получил исключение:
Ссылочная связь приведет к циклической ссылке, которая не разрешена. [Constraint name = Match_GuestTeam]
Как я могу создать такую модель с двумя внешними ключами для одной и той же таблицы?