Delete Entity using DBContext in Disconnected Scenario
We used the Entry() method of DbContext to mark EntityState as Modified in the previous chapter. In the same way, we can use the Entry() method to attach a disconnected entity to the context and mark its state to Deleted.
Student studentToDelete; //1. Get student from DB using (var ctx = new SchoolDBEntities()) { studentToDelete = ctx.Students.Where(s => s.StudentName == "Student1").FirstOrDefault<Student>(); } //Create new context for disconnected scenario using (var newContext = new SchoolDBEntities()) { newContext.Entry(studentToDelete).State = System.Data.Entity.EntityState.Deleted; newContext.SaveChanges(); }
The code shown above results in the following delete query which deletes the row from Teacher table.
delete [dbo].[Student] where ([StudentId] = @0)',N'@0 int',@0=1
Thus, you can delete a single entity in disconnected scenario.
No comments:
Post a Comment