1
我有一個模型,用一個日期字段表示一個mongo文檔。日期字段奇怪的行爲
class model
{
...
[BsonElement("dateCreated")]
[BsonDateTimeOptions(Kind = DateTimeKind.Local)]
public DateTime DateCreated { get; set; }
...
}
我知道蒙戈店在UTC時間值,所以我用BsonDateTimeOptions
屬性在當地時間自動代表他們。
當我創建模型的實例並將其存儲到mongo時,它按預期工作。但是,當我從外部數據源(客戶端到我的服務)接收數據並將其刪除到我的模型時,它會存儲當地時間。
編譯器爲2個不同的實例顯示相同的值(在將它們插入到mongo之前),但在db中,第一個存儲在UTC,第二個存儲在本地時間。
在插入它之前,請查看每個值的'Kind'屬性。 –
我剛剛檢查過它。第一個對象具有'Kind = Unspecified'和反序列化的'Kind = Local'。 – Schaliasos
不確定這裏「先」和「反序列化」是什麼意思,但這將是問題的根源。找出「未指定」版本的真正含義...... –