我有以下類,我已經使用EF Code-first創建了數據庫表。但是,我發現刪除級聯已打開並試圖將其刪除。先用EF代碼禁用級聯刪除不起作用?
public class Category
{
[Key, DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[MaxLength(100)]
public string Title { get; set; }
public virtual ICollection<Event> Events { get; set; }
}
public class Event
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[Required]
[ForeignKey("Category")]
public int CategoryId { get; set; }
public virtual Category Category { get; set; }
}
而且我在DbContext類中添加了以下代碼。
但是,生成遷移代碼生成與一個與cascadeDeletion和另一個沒有兩份AddForeignKey
狀態。
AddForeignKey("dbo.Event", "CategoryId", "dbo.Category", "Id");
AddForeignKey("dbo.Event", "CategoryId", "dbo.Category", "Id", cascadeDelete: true);
CreateIndex("dbo.Event", "CategoryId");
CreateIndex("dbo.Event", "CategoryId");