奇怪的问题。我有3个位置/列,我这样做...
var o = db.Orders.Where(a => a.OrderID == orderID).First();
o.dateOne = DateTime.Now;
db.SubmitChanges();
在这个地方一切都很好......数据库中的价值是说2011-04-01 12:12:33
在其他两个地方,我也是这样做的......
o.dateTwo = DateTime.Now;
o.dateThree = DateTime.Now;
db.SubmitChanges();
这两个对象得到正确的日期,但在数据库中它表示2011-04-01 00:00:00
我尝试在SubmitChanges之前显示对象的值。此时值为WITH时间,例如2011-04-01 12:12:33
其他信息:DB是MS sql,所有列都是日期/时间,.NET 3.5 ......
任何经历过同样行为的人?
答案 0 :(得分:0)
您可以使用SQL事件探查器捕获发送到SQL Server的SQL语句吗?然后,您就可以知道截断发生的位置。
exec sp_executesql'
UPDATE [MyTable] SET [dateTwo] = @p0
WHERE ...',
...--and then defining the value of your datetime
@p0 = '2011-04-01 00:00:00'