public ObjectId AddOrUpdate(Todo todo) { var children = todo.Children?.Select(todo => AddOrUpdate(todo)).ToList(); var dto = new TodoDto() { Childrens = children, Completed = children == null && todo.Compleated, EstimateTime = children == null ? todo.EstimateTime : TimeSpan.Zero, Name = todo.Name, TimeRecords = todo.TimeRecords?.ToList(), Id = todo.Id == null?ObjectId.NewObjectId() : new ObjectId(todo.Id), IsChild = todo.IsChild, Attribute = todo.Attribute }; var todos = db.GetCollection <TodoDto>("todos"); todos.Upsert(dto); return(dto.Id); }
public void Add(TodoDto dto) { var todos = db.GetCollection <TodoDto>("todos"); todos.Insert(dto); }