Давайте предположим, что я хочу запросить монго на dateTime.У меня есть две переменные C #, представляющие дату начала и окончания.
1) {20.10.2011 00:00:00}
2) {22.10.2011 00:00:00}
Теперь BsonDateTime.Create (dateTime) также преобразовал их в скважину BSON DateTime:
1) 2011-10-20T00: 00: 00 MongoDB.Bson.BsonDateTime
2) 2011-10-22T00: 00: 00 MongoDB.Bson.BsonDateTime
Это код, создающий dateTimes (_value - строка):
DateTime dateTime;
bool parsed = DateTime.TryParse(_value, out dateTime);
if (!parsed)
throw new FormatException("Wrong format for a query param");
return BsonDateTime.Create(dateTime);
Затем создается следующий кодзапрос:
private QueryComplete MakeQuery(string key, BsonValue value)
{
if (_separatorType == ">=")
return Query.GTE(key, value);
if (_separatorType == "<=")
return Query.LTE(key, value);
return Query.EQ(key, value);
}
И я получаю в запросе такое странное значение:
"Sessions.End" : { "$gte" : ISODate("2011-10-19T21:00:00Z"), "$lte" : ISODate("2011-10-21T21:00:00Z") },
Хорошо, я гуглю ISODate, но не нашел ни одной причины, по которой он должен быть сдвинут,Это нормально?