public async Task <bool> Add(WordEntity entity) { var filter = Builders <PackageEntity> .Filter.Eq("_id", new ObjectId(entity.packageId)); var update = Builders <PackageEntity> .Update.Push("words", entity); var result = await this.context.Packages.UpdateOneAsync(filter, update); return(result.IsAcknowledged && result.ModifiedCount > 0); }
public async Task <bool> Update(WordEntity entity) { // var filter = Builders<WordEntity>.Filter.Eq("_id", entity._id); // var update = Builders<WordEntity>.Update // .Set(s => s.originalword, entity.originalword) // .Set(s => s.synonym, entity.synonym) // .Set(s => s.ownSentence, entity.ownSentence) // .Set(s => s.description, entity.description); // var result = await this.context.Words.UpdateOneAsync(filter, update); var result = await this.context.Packages.FindOneAndUpdateAsync( c => c._id == ObjectId.Parse(entity.packageId) && c.words.Any(s => s._id == entity._id), // find this match Builders <PackageEntity> .Update.Set(c => c.words[-1].originalword, entity.originalword) //.Set(s => s.synonym, entity.synonym) // .Set(s => s.ownSentence, entity.ownSentence) .Set(s => s.words[-1].description, entity.description)); return(true);//result.IsAcknowledged && result.ModifiedCount > 0; }