Comienza una nueva aplicación ASP.NET MVC 3 y consiguiendo el error siguiente:¿Cómo eliminar un registro con una restricción de clave externa?
The primary key value cannot be deleted because references to this key still exist.
cómo solucionar esto?
Modelos (código primer EF)
public class Journal
{
public int JournalId { get; set; }
public string Name { get; set; }
public virtual List<JournalEntry> JournalEntries { get; set; }
}
public class JournalEntry
{
public int JournalEntryId { get; set; }
public int JournalId { get; set; }
public string Text { get; set; }
}
controlador de configuración
//
// POST: /Journal/Delete/5
[HttpPost, ActionName("Delete")]
public ActionResult DeleteConfirmed(int id)
{
Journal journal = db.Journals.Find(id);
db.Journals.Remove(journal);
db.SaveChanges(); // **exception occurs here**
return RedirectToAction("Index");
}
DB
public class FoodJournalEntities : DbContext
{
public DbSet<Journal> Journals { get; set; }
public DbSet<JournalEntry> JournalEntries { get; set; }
}
En la base de datos, ¿puede elegir la opción de eliminar en cascada para su tabla principal? – Pankaj
Su respuesta puede ser [aquí] (http://stackoverflow.com/a/5522422/60761) ya. Si no, publique el código DbSetup. Puedes eliminar la Vista. –
@PankajGarg - Verifiqué que la base de datos ya tiene este conjunto. –