Introducing FOREIGN KEY constraint 'FK_XX' on table 'Tablo' may cause cycles or multiple cascade paths

alattin (16999) 8 yıl önce sordu

Entity Framework üzerine kurulu Asp.Net uygulaması ilk çalıştırıldığında aşağıdaki hatayı veriyor.

Introducing FOREIGN KEY constraint 'FK_dbo.Kurums_dbo.Ilces_IlceId' on table 'Kurums' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
Could not create constraint. See previous errors.

Hatanın çözümü nedir?

Toplam 1 cevap


alattin (16999) 8 yıl önce cevapladı

Hatayı Flent API ile çözebilirsiniz.

Context klasınızda 

protected override void OnModelCreating( DbModelBuilder modelBuilder )
{
        base.OnModelCreating(modelBuilder);
        modelBuilder.Entity<Tablo>().HasMany(i => i.Users).WithRequired().WillCascadeOnDelete(false);
}

Veya tüm kademeli silme işlemlerini kaldırabilirsiniz:

modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();