MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Popraw wstaw DateTime z c# do mongodb

Myślę, że mylisz się strefami czasowymi. Z na końcu ciągu wskazuje, że jest w UTC. Kiedy publikowałeś to pytanie, było tuż po 15:30 UTC.

Podejrzewam, że rejestrowana jest właściwa chwila w czasie - ale jest to rejestrowana jako chwila w czasie bez odniesienia do konkretnej strefy czasowej. Następnie możesz konwertować że do dowolnej strefy czasowej, którą chcesz później, ale rejestrowanie czasu UTC jest prawie zawsze właściwym podejściem.

Na marginesie, możesz to wyjaśnić, używając UtcNow zacząć z. W ten sposób jest bardziej oczywiste, że nie próbujesz uzyskać „lokalnego” czasu.

Patrząc na dokumentację MongoDB, wydaje się, że wewnętrzna reprezentacja to po prostu liczba milisekund od epoki Uniksa - więc znowu nie ma wskazania strefy czasowej ani przesunięcia między czasem UTC a czasem lokalnym. Jeśli chcesz przechowywać wartość, którą można przekonwertować z powrotem na czas lokalny, który widziałeś w momencie jej zapisania (nawet jeśli jesteś teraz w innej strefie czasowej) należy zapisać identyfikator strefy czasowej i/lub przesunięcie UTC jako oddzielną wartość. Nie jest to zbyt często potrzebne, ale jest to opcja.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Zatapianie danych tematycznych od producenta Javy do Mongodb

  2. Ekspresowe ładowanie sesji z Mongo z session_id

  3. jak uruchomić zapytanie agregujące w kliencie mongodb na RockMongo lub mViewer

  4. IdMemberMap ma wartość null przy użyciu opcji serializacji reprezentacji

  5. czy jakiekolwiek ORM mongodb pozwalają na aliasowanie pól?