public void RemoveFlug(Flight f) { ctx.Remove(f); }
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()); } }