ForumContext.SaveChanges C# (CSharp) Method

SaveChanges() public method

public SaveChanges ( bool acceptAllChangesOnSuccess ) : int
acceptAllChangesOnSuccess bool
return int
        public override int SaveChanges(bool acceptAllChangesOnSuccess)
        {
            foreach (var entry in ChangeTracker.Entries())
            {
                switch (entry.State)
                {
                    case EntityState.Added:
                        ((BaseEntity)entry.Entity).AddedDate = DateTime.Now;
                        ((BaseEntity)entry.Entity).LastModified = DateTime.Now;
                        break;
                    case EntityState.Modified:
                        ((BaseEntity)entry.Entity).LastModified = DateTime.Now;
                        break;
                    case EntityState.Deleted:
                        entry.State = EntityState.Modified;
                        entry.CurrentValues["IsDeleted"] = true;
                        break;
                }
            }
            return base.SaveChanges(acceptAllChangesOnSuccess);
        }

Usage Example

        // PUT api/Users/5
        public HttpResponseMessage PutUser(int id, User user)
        {
            if (!ModelState.IsValid)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
            }

            if (id != user.Id)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest));
            }

            db.Entry(user).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.NotFound, ex));
            }

            return(Request.CreateResponse(HttpStatusCode.OK));
        }
All Usage Examples Of ForumContext::SaveChanges