Update/Delete a sub document in mongodb using C# driver

前端 未结 3 1910
失恋的感觉
失恋的感觉 2021-01-03 07:34

I have 2 classes:

public class Vote
{
    public string VoteId { get; set; }
    public string Question { get; set; }
    public List Answe         


        
3条回答
  •  Happy的楠姐
    2021-01-03 08:26

    // Example function for update like count add like user  using c#    
    public PostModel LikeComment(LikeModel like)
    {
        PostModel post = new PostModel();
    
        _client = new MongoClient();
        _database = _client.GetDatabase("post");
        var collection = _database.GetCollection("post");
    
        var _filter = Builders.Filter.And(
        Builders.Filter.Where(x => x.PostId == like.PostId),
        Builders.Filter.Eq("Comments.CommentId", like.CommentId));
    
        var _currentLike = collection.Find(Builders.Filter.Eq("PostId", like.PostId)).FirstOrDefault().Comments.Find(f => f.CommentId == like.CommentId).Like;
    
        var update = Builders.Update.Set("Comments.$.Like", _currentLike + 1);
        collection.FindOneAndUpdate(_filter, update);
    
        var addUser = Builders.Update.Push("Comments.$.LikeUsers", like.UserId);
        collection.FindOneAndUpdate(_filter, addUser);
    
        var _findResult = collection.Find(_filter).FirstOrDefault();
    
        return _findResult;
    }
    

提交回复
热议问题