public static void undoneTodoItem(todoitem ti) { // Code review. There is no change in database if actual value isn't set. ti.TimeSetToDone = null; db.todoitem.Attach(ti); var entry = db.Entry(ti); entry.State = EntityState.Modified; entry.Property(e => e.TimeSetToDone).IsModified = true; db.SaveChanges(); Console.WriteLine("Item {0} with an ID {1} is now set to undone.", ti.Description, ti.Id); }
public void RemoveAllToDoItems() { // Code review: Should remove only items that aren't already deactivated. //var allItems = db.todoitem.ToList(); var allItems = db.todoitem.Where(x => x.TimeDeactivated.HasValue == false).ToList(); foreach (var item in allItems) { item.TimeDeactivated = DateTime.Now; db.todoitem.Attach(item); var entry = db.Entry(item); entry.State = EntityState.Modified; entry.Property(e => e.TimeDeactivated).IsModified = true; } db.SaveChanges(); Console.WriteLine("All items have been removed. Bye bye"); }