public async Task UpdateAsync(Bson.ObjectId id, UpdateDefinition <T> update) { var collection = _db.GetCollection <T>(_collectioname); var filter = Builders <T> .Filter.Eq("Id", id); update = update.CurrentDate("UpdateDateTime"); var result = await collection.UpdateOneAsync(filter, update); }
public void Update(Bson.ObjectId id, UpdateDefinition <T> update) { var collection = _db.GetCollection <T>(_collectioname); var filter = Builders <T> .Filter.Eq("Id", id); //var update = Builders<T>.Update.Set("Price", "100").CurrentDate("UpdateDateTime"); update = update.CurrentDate("UpdateDateTime"); var result = collection.UpdateOne(filter, update); }
private async Task <IActionResult> UpdateRpgModel(string id, UpdateDefinition <FiveEModel> updateMethod, dynamic returnData) { var collection = MongoDb.GetCollection <FiveEModel>("RpgCharModels"); var stringId = id.ToString(); updateMethod = updateMethod.CurrentDate(s => s._lastUpdated); try { await collection.UpdateOneAsync(filter => filter.Id == stringId, updateMethod); } catch (System.Exception e) { throw e; } return(Ok(returnData)); }
/// <summary> /// Update the workflow. The only things that can be updated are name and description /// </summary> /// <param name="id"></param> /// <param name="version"></param> /// <param name="action"></param> /// <exception cref="NotImplementedException"></exception> public void Update(Guid id, int version, Action <ProcessDefinitionPersistenceBase> action, AccountData[] accounts = null) { UpdateProcessDefPersistence u = new UpdateProcessDefPersistence(); action(u); var filter = Builders <ProcessDefinitionPersistence> .Filter.And( Builders <ProcessDefinitionPersistence> .Filter.Eq(r => r.Id, id), Builders <ProcessDefinitionPersistence> .Filter.Eq(r => r.Version, version) ); UpdateDefinition <ProcessDefinitionPersistence> updatedef = null; if (u.NameSet) { updatedef = Builders <ProcessDefinitionPersistence> .Update.Set(r => r.Name, u.Name); } if (u.DescriptionSet) { if (updatedef == null) { updatedef = Builders <ProcessDefinitionPersistence> .Update.Set(r => r.Description, u.Description); } else { updatedef.Set(r => r.Description, u.Description); } } if (accounts != null) { if (updatedef == null) { updatedef = Builders <ProcessDefinitionPersistence> .Update.Set(r => r.Accounts, new List <AccountData>(accounts)); } else { updatedef.Set(r => r.Accounts, new List <AccountData>(accounts)); } } updatedef = updatedef?.CurrentDate(r => r.LastModified); if (updatedef == null) { return; } _collection.FindOneAndUpdate(filter, updatedef); }
public bool Update(FilterDefinition <T> filter, UpdateDefinition <T> update, UpdateOptions updateOptions = null) { return(Collection.UpdateMany(filter, update.CurrentDate(i => i.ModifiedOn), updateOptions).ModifiedCount > 0); }