Eu comecei a usar o código EF primeiro, então sou um iniciante neste tópico.
Eu queria criar relações entre equipes e jogos:
1 partida = 2 equipes (casa, convidado) e resultado.
Eu pensei que era fácil criar um modelo assim, então comecei a codificar:
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; }
}
E eu recebo uma exceção:
O relacionamento referencial resultará em uma referência cíclica que não é permitida. [Nome da restrição = Match_GuestTeam]
Como posso criar esse modelo, com 2 chaves estrangeiras na mesma tabela?