我的MongoDB中有一个文档:
{
"_id" : ObjectId("5624e8c8470b460f1cf1c323"),
"body" : "【ex】test",
"datetime" : ISODate("2015-10-19T12:57:41.836Z"),
"source" : "wx",
"title" : "for test"
}
这是我的查询方法:
public Task<List<InfoLogModel>> GetLogByFilter(DateTime? startAt = null, DateTime? endAt = null)
{
var collection = //...
List<FilterDefinition<InfoLogModel>> QueryConditionList = new List<FilterDefinition<InfoLogModel>>();
if (startAt != null)
QueryConditionList.Add(Builders<InfoLogModel>.Filter.Gte(aa => aa.datetime, (BsonDateTime)startAt));
if (endAt != null)
QueryConditionList.Add(Builders<InfoLogModel>.Filter.Lte(aa => aa.datetime, (BsonDateTime)endAt));
var filter = Builders<InfoLogModel>.Filter.And(QueryConditionList);
return collection.Find(filter).ToListAsync();
}
很奇怪,当我的startAt
为DateTime.Parse("2015/10/20")
时,结果计数为0,这很好。
但是当我设置startAt = DateTime.Parse("2015/10/19 20:00:00")
时,我很惊讶地得到了这份文件。
该文件的datetime
是2015/10/19 12:57:41,即使我过滤了文件,我什么时候可以拿到文件?