public static bool Eliminar(int id) { bool paso = false; Contexto db = new Contexto(); try { var Eliminar = PersonasBLL.Buscar(id); db.Entry(Eliminar).State = EntityState.Deleted; paso = (db.SaveChanges() > 0); } catch (Exception) { throw; } finally { db.Dispose(); } return(paso); }
public static bool Modificar(Personas personas) { bool paso = false; Contexto db = new Contexto(); try { ////buscar las entidades que no estan para removerlas var Anterior = PersonasBLL.Buscar(personas.PersonaId); foreach (var item in Anterior.Telefonos) { if (!personas.Telefonos.Exists(d => d.Id == item.Id)) { db.Entry(item).State = EntityState.Deleted; } } //recorrer el detalle foreach (var item in personas.Telefonos) { //Muy importante indicar que pasara con la entidad del detalle var estado = item.Id > 0 ? EntityState.Modified : EntityState.Added; db.Entry(item).State = estado; } ////Idicar que se esta modificando el encabezado db.Entry(personas).State = EntityState.Modified; paso = (db.SaveChanges() > 0); } catch (Exception) { throw; } finally { db.Dispose(); } return(paso); }