LINQ to SQL устанавливает дату, но не время ... иногда - PullRequest
0 голосов
/ 06 апреля 2011

странная проблема. У меня есть 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. На данный момент значение равно СО времени, например, 2011-04-01 12: 12: 33

Другая информация: БД - MS sql, все столбцы - дата / время, .NET 3.5 ...

Кто-нибудь, кто испытал такое же поведение?

1 Ответ

0 голосов
/ 06 апреля 2011

Можете ли вы захватить оператор SQL, отправляемый на SQL Server с использованием SQL Profiler? После этого вы сможете определить, где произошло усечение.

exec sp_executesql'
UPDATE [MyTable]  SET [dateTwo] = @p0
WHERE ...',
...--and then defining the value of your datetime
@p0 = '2011-04-01 00:00:00'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...