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
When using a filter to remove array elements, you need to use the PullFilter builder instead of Pull (which matches whole elements).
var collection = db.GetCollection("people");
var filter = new BsonDocument("username", "bodrum");
var update = Builders.Update.PullFilter("followerList",
Builders.Filter.Eq("follower", "fethiye"));
var result = collection.FindOneAndUpdateAsync(filter, update).Result;
Or somewhat more succinctly, using lambdas:
var update = Builders.Update.PullFilter(p => p.followerList,
f => f.follower == "fethiye");
var result = collection
.FindOneAndUpdateAsync(p => p.username == "bodrum", update).Result;