この質問のタイトルが正確にわかりませんでした。これが私が解決しようとしている問題です。
Fight と Fighter という多対多の関係を持つ 2 つのテーブルがあります。ファイターは多くのファイトに参加でき、ファイトには多くのファイター (2 人のファイター) が含まれます。これらは問題なくマッピングされていますが、私がやりたいのは、ファイト テーブルに 2 人のファイターのどちらが勝ったかを設定できる列を作成することです。これに対する最善のアプローチは何ですか?
わからないことがあれば、もっと分かりやすく説明していきますのでよろしくお願いします。
public class Fight
{
[Key]
public int FightId { get; set; }
[Key, ForeignKey("FightCard")]
public int CardId { get; set; }
public virtual ICollection<Fighter> Fighters { get; set; }
}
public class Fighter
{
[Key]
public int FighterID { get; set; }
[Required]
[DisplayName("First Name")]
public string FirstName { get; set; }
[Required]
[DisplayName("Last Name")]
public string LastName { get; set; }
[DisplayName("Nickname")]
public string NickName { get; set; }
[Required]
public string Nationality { get; set; }
public static String[] WeightClassOptions
{
get
{
return new String[] { "Heavyweight", "Light Heavyweight", "Middleweight", "Welterweight", "Lightweight", "Featherweight", "Bantamweight", "Flyweight" };
}
}
[DisplayName("Weight Class")]
public string WeightClass { get; set; }
public string Height { get; set; }
[Required]
[DisplayName("Date of Birth")]
[DataType(DataType.Date)]
public DateTime DateOfBirth { get; set; }
// Fight Record:
public int Wins { get; set; }
public int Loss { get; set; }
public int Draw { get; set; }
public int NoContest { get; set; }
public String Picture { get; set; }
public virtual ICollection<Fight> Fight { get; set; }