奇怪的问题。我有3个地方/列我做这个…
var o = db.Orders.Where(a => a.OrderID == orderID).First();
o.dateOne = DateTime.Now;
db.SubmitChanges();
在这个地方一切都很好……DB中的值为2011-04-01 12:12:33在另外两个地方,我为……做同样的事情。
o.dateTwo = DateTime.Now;
o.dateThree = DateTime.Now;
db.SubmitChanges();
这两个对象得到了正确的日期,但在DB中显示为2011-04-01 00:00:00
我已经尝试在提交更改之前显示对象的值。此时的值为WITH time,例如2011-04-01 12:12:33
其他信息:数据库是MS sql,所有列是日期/时间,.NET 3.5…
有没有人经历过同样的行为??可以使用SQL Profiler捕获发送到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'