Мне нужно запросить коллекцию MongoDB, где разница дат между двумя полями даты в каждом документе равна 1 дню.
Я пытался использовать MongoDB.Driver.Builders, используя Where
или Eq
FilterDefinitions, но не могу заставить его работать. Есть ли способ сделать это? Если так, есть ли способ исключить часть времени, чтобы я просто получал разницу между двумя датами?
Вот код, который у меня есть:
var client = new MongoClient("mongodb://localhost:27017");
var database = client.GetDatabase("local");
var collection = database.GetCollection<BsonDocument>("testCollection");
var builder = Builders<BsonDocument>.Filter;
var filter = builder.Exists("{$cond:[{$gte:[{$divide:[{$subtract:[DateField1,DateField2]},1000*60*60*24]},1]}]}");
var documents = collection.Find(filter).ToList();