private static void DeleteNinja()
        {
            var keyVal = 3;
            Ninja ninja = null;
            using (var context = new NinjaContext())
            {
                context.Database.Log = Console.WriteLine;
                ninja = context.Ningas.Find(keyVal);
            }

            using (var context = new NinjaContext())
            {
                context.Database.Log = Console.WriteLine;
                //instead those two lines use state change
                    //context.Ningas.Attach(ninja);
                    //context.Ningas.Remove(ninja);
                context.Entry(ninja).State = EntityState.Deleted;
                context.SaveChanges();

            }
        }
 private static void QueryAndUpdateDisconnected()
 {
     Ninja ninja = null;
     using (var context = new NinjaContext())
     {
         context.Database.Log = Console.WriteLine;
         ninja = context.Ningas.FirstOrDefault();
     }
     ninja.ServedInOniwaban = !ninja.ServedInOniwaban;
     using (var context = new NinjaContext())
     {
         context.Database.Log = Console.WriteLine;
         context.Ningas.Attach(ninja);
         context.Entry(ninja).State = EntityState.Modified;
         context.SaveChanges();
     }
 }