Saya baru saja mulai menggunakan kode EF terlebih dahulu, jadi saya adalah pemula total dalam topik ini.
Saya ingin membuat hubungan antara Tim dan Pertandingan:
1 pertandingan = 2 tim (rumah, tamu) dan hasil.
Saya pikir mudah untuk membuat model seperti itu, jadi saya mulai mengkodekan:
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; }
}
Dan saya mendapatkan pengecualian:
Hubungan referensial akan menghasilkan referensi siklus yang tidak diizinkan. [Kendala nama = Match_GuestTeam]
Bagaimana saya bisa membuat model seperti itu, dengan 2 kunci asing ke tabel yang sama?