public static void Run() { using (var context = new BloggingContext()) { context.Database.EnsureDeleted(); context.Database.EnsureCreated(); context.Blogs.Add(new Blog { Url = "http://sample.com", Posts = new List <Post> { new Post { Title = "Saving Data with EF" }, new Post { Title = "Cascade Delete with EF" } } }); context.SaveChanges(); } #region CascadingOnTrackedEntities using (var context = new BloggingContext()) { var blog = context.Blogs.Include(b => b.Posts).First(); context.Remove(blog); context.SaveChanges(); } #endregion using (var context = new BloggingContext()) { context.Blogs.Add(new Blog { Url = "http://sample.com", Posts = new List <Post> { new Post { Title = "Saving Data with EF" }, new Post { Title = "Cascade Delete with EF" } } }); context.SaveChanges(); } #region CascadingOnDatabaseEntities using (var context = new BloggingContext()) { var blog = context.Blogs.First(); context.Remove(blog); context.SaveChanges(); } #endregion }
public static void Run() { using (var db = new BloggingContext()) { db.Database.EnsureDeleted(); db.Database.EnsureCreated(); db.Blogs.Add(new Blog { Url = "http://sample.com", Posts = new List <Post> { new Post { Title = "Saving Data with EF" }, new Post { Title = "Cascade Delete with EF" } } }); db.SaveChanges(); } using (var db = new BloggingContext()) { var blog = db.Blogs.Include(b => b.Posts).First(); db.Remove(blog); db.SaveChanges(); } using (var db = new BloggingContext()) { db.Blogs.Add(new Blog { Url = "http://sample.com", Posts = new List <Post> { new Post { Title = "Saving Data with EF" }, new Post { Title = "Cascade Delete with EF" } } }); db.SaveChanges(); } using (var db = new BloggingContext()) { var blog = db.Blogs.First(); db.Remove(blog); db.SaveChanges(); } }
public static void Run() { using (var db = new BloggingContext()) { db.Database.EnsureDeleted(); db.Database.EnsureCreated(); db.Blogs.Add(new Blog { Url = "http://sample.com", Posts = new List<Post> { new Post { Title = "Saving Data with EF" }, new Post { Title = "Cascade Delete with EF" } } }); db.SaveChanges(); } using (var db = new BloggingContext()) { var blog = db.Blogs.Include(b => b.Posts).First(); db.Remove(blog); db.SaveChanges(); } using (var db = new BloggingContext()) { db.Blogs.Add(new Blog { Url = "http://sample.com", Posts = new List<Post> { new Post { Title = "Saving Data with EF" }, new Post { Title = "Cascade Delete with EF" } } }); db.SaveChanges(); } using (var db = new BloggingContext()) { var blog = db.Blogs.First(); db.Remove(blog); db.SaveChanges(); } }
private static void DeleteBehaviorSample(DeleteBehavior deleteBehavior, bool requiredRelationship) { Console.WriteLine( $"Test using DeleteBehavior.{deleteBehavior} with {(requiredRelationship ? "required" : "optional")} relationship:"); InitializeDatabase(requiredRelationship); using var context = new BloggingContext(deleteBehavior, requiredRelationship); #region DeleteBehaviorVariations var blog = context.Blogs.Include(b => b.Posts).First(); var posts = blog.Posts.AsQueryable().ToList(); DumpEntities(" After loading entities:", context, blog, posts); context.Remove(blog); DumpEntities($" After deleting blog '{blog.BlogId}':", context, blog, posts); try { Console.WriteLine(); Console.WriteLine(" Saving changes:"); context.SaveChanges(); DumpSql(); DumpEntities(" After SaveChanges:", context, blog, posts); } catch (Exception e) { DumpSql(); Console.WriteLine(); Console.WriteLine( $" SaveChanges threw {e.GetType().Name}: {(e is DbUpdateException ? e.InnerException.Message : e.Message)}"); } #endregion Console.WriteLine(); }