我有以下对象:
public class QueueItem
{
public long _id { get; set; }
public SiteMapRequestState State { get; set; }
public int WorkerId { get; set; }
public DateTime QueuedTime { get; set; }
public DateTime StartWorkTime { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
当我将对象保存到mongo时,日期显示为右(DateTime字段包含我插入的正确日期).但是,当我拉这个物体时,我会得到不同的时间(-3小时).
例如:我使用StartWorkTime = 6/26/2012 10:00:00 AM保存对象,然后从集合中获取对象StartWorkTime等于6/26/2012 7:00:00 AM.这使得处理时间的计算错误.
我正在使用最新的c#驱动程序(1.4.2.4500)并在同一台机器上运行代码和mongo服务器.
有什么可以导致差异?
谢谢!
挖了一下我发现这个帖子:http: //alexmg.com/post/2011/09/30/DateTime-precision-with-MongoDB-and-the-C-Driver.aspx
我需要使用[BsonDateTimeOptions(Kind = DateTimeKind.Local)]属性标记DateTime属性