Example #1
0
 public void RemoveFlug(Flight f)
 {
     ctx.Remove(f);
 }
Example #2
0
        public static void ChangeTracking_MultipleObjects()
        {
            CUI.MainHeadline(nameof(ChangeTracking_MultipleObjects));

            using (var ctx = new WWWingsContext())
            {
                var flightQuery = (from y in ctx.FlightSet select y).OrderBy(f4 => f4.FlightNo).Take(3);
                foreach (var flight in flightQuery.ToList())
                {
                    flight.FreeSeats -= 2;
                    flight.Memo       = "Changed on " + DateTime.Now;
                }

                var newFlight = ctx.FlightSet.Find(123456);
                if (newFlight != null)
                {
                    ctx.Remove(newFlight);
                }
                else
                {
                    newFlight             = new Flight();
                    newFlight.FlightNo    = 123456;
                    newFlight.Departure   = "Essen";
                    newFlight.Destination = "Sydney";
                    newFlight.AirlineCode = "WWW";
                    newFlight.PilotId     = ctx.PilotSet.FirstOrDefault().PersonID;
                    newFlight.Seats       = 100;
                    newFlight.FreeSeats   = 100;
                    ctx.FlightSet.Add(newFlight);
                }
                CUI.Headline("New objects");
                IEnumerable <EntityEntry> neueObjecte = ctx.ChangeTracker.Entries().Where(x => x.State == EntityState.Added);
                if (neueObjecte.Count() == 0)
                {
                    Console.WriteLine("none");
                }
                foreach (EntityEntry entry in neueObjecte)
                {
                    CUI.Print("Object " + entry.Entity.ToString() + " State: " + entry.State, ConsoleColor.Cyan);
                    ITVisions.EFCore.EFC_Util.PrintChangedProperties(entry);
                }

                CUI.Headline("Changed objects");
                IEnumerable <EntityEntry> geaenderteObjecte =
                    ctx.ChangeTracker.Entries().Where(x => x.State == EntityState.Modified);
                if (geaenderteObjecte.Count() == 0)
                {
                    Console.WriteLine("none");
                }
                foreach (EntityEntry entry in geaenderteObjecte)
                {
                    CUI.Print("Object " + entry.Entity.ToString() + " State: " + entry.State, ConsoleColor.Cyan);
                    ITVisions.EFCore.EFC_Util.PrintChangedProperties(entry);
                }

                CUI.Headline("Deleted objects");
                IEnumerable <EntityEntry> geloeschteObjecte = ctx.ChangeTracker.Entries().Where(x => x.State == EntityState.Deleted);
                if (geloeschteObjecte.Count() == 0)
                {
                    Console.WriteLine("none");
                }
                foreach (EntityEntry entry in geloeschteObjecte)
                {
                    CUI.Print("Object " + entry.Entity.ToString() + " State: " + entry.State, ConsoleColor.Cyan);
                }
                Console.WriteLine("Changes: " + ctx.SaveChanges());
            }
        }