Конвертировать C # DateTime в формат MongoDB - PullRequest
5 голосов
/ 16 февраля 2012

Я создаю вручную BsonDocument.Я должен добавить дату и время в документ.Как я могу конвертировать C # Datetime в формат MongoDB?

Спасибо

1 Ответ

11 голосов
/ 16 февраля 2012

Вам не нужно ничего делать.Просто назначьте дату документу bson:

var bsonDocument = new BsonDocument();
bsonDocument["date"] = DateTime.Now;

Драйвер автоматически преобразует дату и время в формат mongodb и сохранит их как дату UTC, а также обратится к вашему местному часовому поясу, когда вы его прочитаете (фактически вы можетеизменить это поведение через настройки драйвера).Итак, имейте в виду, что даты в mongodb всегда в формате UTC.

Документация по mongodb DateTime:

Тип данных BSON Date / Time называется «UTC DateTime»."в спецификации BSON

Значение даты BSON хранит количество миллисекунд с начала Unix (1 января 1970 г.) как 64-разрядное целое число.v2.0 +: это число подписано, поэтому даты до 1970 года сохраняются как отрицательные числа.

...