using MongoDB.Bson.Serialization; using MongoDB.Bson; using MongoDB.Driver; using System; using System.Collections.Generic; using System.Text; namespace MongoDb.Ado.data { public class DeleteManyHandler : IMongoOperationHandler { public string operation { get; set; } public int Handle(IMongoCollection collection, string json) { var documents = ParseJsonArray(json); int total = 0; foreach (var doc in documents) { var filter = doc["filter"].AsBsonDocument; var result = collection.DeleteMany(filter); total += (int)result.DeletedCount; } return total; } private List ParseJsonArray(string json) { if (json.TrimStart().StartsWith("[")) return BsonSerializer.Deserialize>(json); return new List { BsonDocument.Parse(json) }; } } }