Following the general theme of the last couple of posts ( here and here ), I thought I'd carry on and experiment with deleting. static void Main( string [] args) { using (NorthwindContext ctx = new NorthwindContext( "Name=NorthwindEntities" )) { Shippers s = ctx.Shippers.First(); ctx.DeleteObject(s); DumpObjectStateManager(ctx.ObjectStateManager); DumpShippers(ctx.Shippers); } } static void DumpShippers(IEnumerable<Shippers> shippers) { Console.WriteLine( "Dumping" ); foreach (Shippers s in shippers) { Console.WriteLine( "\tShipper id [{0}], name [{1}], tel [{2}]" , s.ShipperID, s.CompanyName, s.Phone); } } Now, a couple of interesting things here. Firstly, when we hit the DumpObjectStateManager we get; Dumping Object State Manager Dumping objects in state [Detached] Dumping objects in state [Unchanged] Dumping objects in state [Added] Dumping objects in state [Deleted] Entity from entity set [Shippers], key [<Key=ShipperID,Value=1>] Dumping objects in state [Modified] Dumping Shipper id [1], name...