Ho un momento la data che ho generato in questo modo:millisecondi miei cambiamenti DateTime quando memorizzati in SQL Server
DateTime myDateTime = DateTime.Now;
ho poi conservarlo nel database (in una colonna digitato DateTime
) con Entity Framework. Quindi lo recupero con OData (WCF Data Services).
Quando va nel valore timeofday è: 09: 30: 03,0196095
Quando si esce il valore timeofday è: 09: 30: 03,0200000
L'effetto netto di questo rende in modo che i Millisecondi siano visti come 19 prima che vengano salvati e 20 dopo essere stati ricaricati.
Così quando faccio un confronto più avanti nel mio codice, fallisce dove dovrebbe essere uguale.
SQL Server non ha la stessa precisione di .NET? O è Entity Framework o OData che sta incasinando questo?
Appena troncato fuori dai millisecondi (non ne ho davvero bisogno). Ma mi piacerebbe sapere perché questo sta accadendo.
come stai facendo il confronto? – ChrisBint
È una precisione diversa. Vedi le domande correlate a lato. –
In quale versione di SQL Server ci si trova? Se il 2008 'datetime2' ha maggiore precisione. –