Tôi mới bắt đầu sử dụng mã EF trước tiên, vì vậy tôi là người mới bắt đầu trong chủ đề này.
Tôi muốn tạo mối quan hệ giữa Đội và Trận đấu:
1 trận đấu = 2 đội (nhà, khách) và kết quả.
Tôi nghĩ thật dễ dàng để tạo ra một mô hình như vậy, vì vậy tôi bắt đầu viết mã:
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; }
}
Và tôi nhận được một ngoại lệ:
Mối quan hệ tham chiếu sẽ dẫn đến một tham chiếu theo chu kỳ không được phép. [Tên ràng buộc = Match_GuestTeam]
Làm thế nào tôi có thể tạo một mô hình như vậy, với 2 khóa ngoại vào cùng một bảng?