I want to delete a post but I get an SqlException:
The DELETE statement conflicted with the REFERENCE constraint "FK_dbo.Adresler_dbo.Kisi_Kisi_ID". The conflict occurred in database "TestDb", table "dbo.Adresler", column 'Kisi_ID'. The statement has been terminated.
[Table("Kisi")]
public class Kisiler
{
[Key,DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
[StringLength(20),Required]
public String Ad { get; set; }
[StringLength(20),Required]
public String Soyad { get; set; }
[Required]
public int Yas { get; set; }
public virtual List<Adresler> Adresler { get; set; }
}
[Table("Adresler")]
public class Adresler
{
[Key,DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ID { get; set; }
[StringLength(300)]
public string AdresTanim { get; set; }
public virtual Kisiler Kisi { get; set; }
}
[HttpPost,ActionName("Sil")]
public ActionResult SilOk(int? kisiid)
{
if (kisiid != null)
{
DatabaseContext db = new DatabaseContext();
Kisiler kisi = db.dbSetKisiler.Where(x => x.ID == kisiid).FirstOrDefault();
Adresler adres = db.dbSetAdresler.Where(x => x.Kisi.ID == kisi.ID).FirstOrDefault();
db.dbSetKisiler.Remove(kisi);
db.dbSetAdresler.Remove(adres);
db.SaveChanges();
}
return RedirectToAction("Index", "Home");
}
How can I do it?