MongoDB .Net driver 2.0 Pull (remove element)

前端 未结 4 1483
谎友^
谎友^ 2020-11-28 12:11

Can you help me to run correctly \"Pull (remove)\" with 2.0 driver.

I have a collection like this and I want to remove first follower named as fethiye by follower fi

4条回答
  •  野性不改
    2020-11-28 12:44

    This is what i use to delete a nested array object

    -parentpath: followerList
    -propertie: follower
    -value: fethiye.png

    var filter = new BsonDocument("_id", ObjectId.Parse(id));
    
        var updateValues = Builders.Update.PullFilter(parentPath,
            Builders.Filter.Eq(propertie, value));
            DatabaseCollection.FindOneAndUpdate(filter, updateValues);
    
    
    

    Example to delete a deeper nested array object:
    Let's delete the object with the name Doe

    -parentPath: followerList.0.testArray
    -propertie:name
    -value:Doe

        {
      "_id": ObjectId("554e05dfc90d3d4dfcaa2aea"),
      "username": "bodrum",
      "followerList": [
        {
          "_id": ObjectId("554e0625a51586362c33c6df"),
          "follower": "fethiye",
          "testArray": [
    {
    "name":"John"
    },
    {
    "name":"Doe"
    },
    {
    "name":"Jason"
    }
    ]
        },
        {
          "_id": ObjectId("554e0625a51586362c33c6df"),
          "follower": "izmir",
          "avatar": "izmir.png"
        }
      ]
    } 
    

    提交回复
    热议问题