MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Правилно вмъкване на DateTime от c# към mongodb

Мисля, че се объркваш от часовите зони. Z в края на низа показва, че е в UTC. Когато публикувахте този въпрос, беше малко след 15:30 UTC.

Силно подозирам, че се записва правилният момент във времето - но той се записва като момент без препратка към конкретна часова зона. След това можете да конвертирате в каквато часова зона искате по-късно, но записването на UTC времето е почти винаги правилният подход.

Освен това можете да направите това по-ясно, като използвате UtcNow Да започнем с. По този начин е по-очевидно, че не се опитвате да получите "местно" време.

Разглеждайки документацията на MongoDB, изглежда, че вътрешното представяне е просто брой милисекунди от епохата на Unix - така че отново няма индикация за часова зона или отместване между UTC и местното време. Ако искате да съхраните стойност, която може да бъде преобразувана обратно в местното време, което сте видели, когато е била записана (дори ако сте сега в различна часова зона) трябва да съхраните ID на часовата зона и/или UTC отместването като отделна стойност. Това не е необходимо много често, но е опция.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cassandra срещу MongoDB:кое да изберете

  2. премахване на scanAndOrder :true в резултата от моята MongoDB заявка

  3. Удостоверяването на MongoDB 3.2 не бе успешно

  4. Многократно синхронно намиране на Mongoose за повторно използване на ID на обект

  5. MongoDB Преброява общия брой истински и неверни стойности за документи, съответстващи на заявка