2017-08-13 43 views
0

我正在使用C#1.11驅動程序用於mongodb。我注意到,當我使用日期objectId創建和當我使用CreationTime屬性來獲取日期時間是不同的。爲什麼MongoDB ObjectId的創建時間與用於創建它的日期時間不同

任何人都可以解釋爲什麼會發生這種情況?

使用日期2016年10月14日12:00:00 AM

var date = DateTime.ParseExact("20161014000000","yyyyMMddHHmmss", CultureInfo.InvariantCulture); 

創建的ObjectId

ObjectId oid = new ObjectId(date, 0 , 0 , 0); 
oid.CreationTime // returns 10/14/2016 7:00:00 AM 

回答

2

可能是因爲蒙戈默認(mongo's docs)修改它以UTC: 「的MongoDB在默認情況下以UTC存儲時間,並且將任何當地時間 表示形式轉換爲此表單。必須操作或報告某些 未修改的本地時間值的應用程序可能會將時區存儲在UTC時間旁邊夯實, 並在其應用邏輯中計算原始本地時間。「

相關問題