public class A
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public virtual int Aid { get; set; }
public virtual ICollection<B> B { get; set; }
}
public class B
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public virtual int Bid { get; set; }
[Key]
[Column(Order = 0)]
[Required]
Public virtual string BName {get ; set}
[Key]
[Column(Order = 1)]
[Required]
public virtual int Aid { get; set; }
[ForeignKey("Aid")]
public virtual A A { get; set; }
public virtual ICollection<C> C { get; set; }
}
public class C
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public virtual int Cid { get; set; }
[Key]
[Column(Order = 0)]
[Required]
Public virtual string CName {get ; set}
[Key]
[Column(Order = 1)]
[Required]
public virtual int Bid { get; set; }
[ForeignKey("Bid")]
public virtual B B { get; set; }
}
関係は、私は、クラスCマッピングEFコード内の非主要代理キー列に外部キー最初
同一である必要がありますそして限り、私はそれを理解B.エラーで外部キーとしてBNAMEを含めるいけない.I悩まれています関係性の制約で従属し、主な役割のプロパティ の私はAとの間の関係を乱すことなく、それを達成することができますどのように、私はエラーを理解するが、私は唯一の入札によってCクラスを指すようにしたい