のいずれかを用いて構成されている必要があり、「この会合の主要端は、明示的に関係流暢APIまたはデータアノテーションのいずれかを使用して設定する必要があります。」主要端が明示的関係流暢APIまたはデータアノテーション
データベースの更新/移行時にEntity Framework 4.4でこのエラーが発生しましたが、1:1の関係を指定しようとしていません。エンティティAがEntityBが好まエンティティAの子を持つことができるのに対し、EntityBの親を持っている必要がありますが、する必要はありません
public class EntityA
{
public int ID { get; set; }
public int EntityBID { get; set; }
[ForeignKey("EntityBID")]
public virtual EntityB EntityB { get; set; }
}
public class EntityB
{
public int ID { get; set; }
public Nullable<int> PreferredEntityAID { get; set; }
[ForeignKey("PreferredEntityAID")]
public virtual EntityA PreferredEntityA { get; set; }
}
:私はこのような何かをしたいです。優先する子は親に関連付けられた子の1つである必要がありますが、データベースでこれを強制する方法はわかりません。プログラムでそれを強制する予定です。
このエラーを回避するにはどうすればよいですか、これらの関係を達成するためのよりよい方法はありますか?
'[のForeignKey(「EntityAID」) ] 'は、' EntityB.EntityAID'プロパティがあることを意味します。サンプルでそれを見逃しましたか? – Dennis
あなたは[ForeignKey( "PreferredEntityAID")]を意味しますか? – ChaseMedallion
それをキャッチするためにありがとう。私の例でそれを逃した。私はそれを編集した。 – lintmouse