私はエラーFOREIGN KEY制約を紹介Entity Framework 7でON DELETE NO ACTIONを指定していますか? Entity Frameworkの7では
を取得し、マイグレーションを適用しようとしています「FK_ChangeOrder_User_CreatedByID」テーブルの上に「ChangeOrderは」サイクルまたは複数のカスケードパスを引き起こす可能性があります。 NO DELETE NO ACTIONまたはUP UP NO NO ACTIONを指定するか、他のFOREIGN KEY制約を変更してください。
制約を作成できませんでした。以前のエラーを参照してください。私はそれに.Conventions
を持っていないようですし、Googleが唯一の古い戻っているあなたはDbContextにmodelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();
を追加することではなくEF7
modelBuilder
でこれに対処するだろうEntity Frameworkの古いバージョンの知っている
EF4が結果をもたらすが、EF4。
具体的には、Entity Framework 7のON DELETE NO ACTION
という制約はありますか?
編集: Olegによって提供される回答は、外来キーごとに明らかになりますが、これをグローバルに宣言するためにコードの1行を使用するほうがはるかに簡単であるため、これをグローバルに行いたいと思います。何百もの人間関係のすべてが私が持つことになります。
編集2:オレグ
のコードpublic class ChangeOrder
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
public Int16? ApprovedByID { get; set; }
public Byte ApprovalStatusID { get; set; }
public Int16 AssignedToID { get; set; }
public Int16 CreatedByID { get; set; }
public Byte CurrentStatusID { get; set; }
public DateTime? DateApproved { get; set; }
public DateTime? EndDate { get; set; }
public Byte ImpactID { get; set; }
public Byte PriorityID { get; set; }
public DateTime? StartDate { get; set; }
public Byte TypeID { get; set; }
[Required]
public string Name { get; set; }
[Required]
public string ReasonForChange { get; set; }
[ForeignKey("ApprovedByID")]
public User ApprovedBy { get; set; }
[ForeignKey("ApprovalStatusID")]
public ChangeApprovalStatus ApprovalStatus { get; set; }
[ForeignKey("AssignedToID")]
public User AssignedTo { get; set; }
[ForeignKey("CreatedByID")]
public User CreatedBy { get; set; }
[ForeignKey("ImpactID")]
public ChangeImpact Impact { get; set; }
[ForeignKey("PriorityID")]
public ChangePriority Priority { get; set; }
[ForeignKey("TypeID")]
public ChangeType ChangeType { get; set; }
[ForeignKey("CurrentStatusID")]
public ChangeStatus CurrentStatus { get; set; }
}
public class JobSightDBContext : DbContext
{
protected override void OnModelCreating(ModelBuilder modelbuilder)
{
base.OnModelCreating(modelbuilder);
}
DbSet<ChangeApprovalStatus> ChangeApprovalStatus { get; set; }
DbSet<ChangeImpact> ChangeImapct { get; set; }
DbSet<ChangeOrder> ChangeOrders { get; set; }
DbSet<ChangePriority> ChangePriorities { get; set; }
DbSet<ChangeStatus> ChangeStatus { get; set; }
DbSet<ChangeType> ChangeTypes { get; set; }
DbSet<User> Users { get; set; }
}
これは私の人生を救った!!!!!私はFKの問題をモデリングしていました。感謝万円!!!!!!!!!!!!!! –