Получение этой ошибки:
System.Data.SqlClient.SqlException: преобразование типа данных datetime2 в тип данных datetime привело к значению вне допустимого диапазона.
Все объекты моей сущности совпадают с объектами БД.
Я нашел только одну ссылку на эту ошибку через Google:
Результат Google
Прочитав это, я помню, что мы сделали , добавили 2 поля и затем обновили модель сущности из VS 2010. Я не уверен, что он подразумевает под "ручным кодированием" различий. Я ничего не вижу.
Все, что я делаю в коде, - это заполнение объекта-сущности, а затем сохранение. (Я также заполняю новые поля в коде) Я заполнил поле даты с помощью DateTime.Now
..
Важной частью кода является: ctx.SaveChanges(SaveOptions.AcceptAllChangesAfterSave);
База данных SQL Server 2008.
Мысли
Остальная часть ошибки:
в System.Data.Mapping.Update.Internal.UpdateTranslator.Update (IEntityStateManager stateManager, адаптер IEntityAdapter)
в System.Data.EntityClient.EntityAdapter.Update (IEntityStateManager entityCache)
в System.Data.Objects.ObjectContext.SaveChanges (параметры SaveOptions)
в SafariAdmin.Site.WebServices.SpeciesPost.SaveOrUpdateSpecies (String sid, String fieldName, String authToken) в SpeciesPost.svc.cs: строка 58
в SafariAdmin.TestHarness.Tests.Site.WebServices.SpeciesPostSVC_Tester.SaveNewSpecies () в SpeciesPostSVC_Tester.cs: строка 33
--SqlException
в System.Data.SqlClient.SqlConnection.OnError (исключение SqlException, логическое breakConnection)
в System.Data.SqlClient.SqlInternalConnection.OnError (исключение SqlException, логическое breakConnection)
в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning ()
в System.Data.SqlClient.TdsParser.Run (RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
в System.Data.SqlClient.SqlDataReader.ConsumeMetaData ()
в System.Data.SqlClient.SqlDataReader.get_MetaData ()
в System.Data.SqlClient.SqlCommand.FinishExecuteReader (SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
в System.Data.SqlClient.SqlCommand.RunExecuteReaderTds (CommandBehavior cmdBehavior, RunBehavior runBehavior, логический returnStream, логический асинхронный)
в System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior, RunBehavior runBehavior, логический returnStream, метод String, результат DbAsyncResult)
в System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior, RunBehavior runBehavior, логический returnStream, метод String)
в System.Data.SqlClient.SqlCommand.ExecuteReader (поведение CommandBehavior, метод String)
в System.Data.SqlClient.SqlCommand.ExecuteDbDataReader (поведение CommandBehavior)
в System.Data.Common.DbCommand.ExecuteReader (поведение CommandBehavior)
в System.Data.Mapping.Update.Internal.DynamicUpdateCommand.Execute (транслятор UpdateTranslator, соединение EntityConnection, словарь 2 identifierValues, List
1 генерируемых значений)
в System.Data.Mapping.Update.Internal.UpdateTranslator.Update (IEntityStateManager stateManager, адаптер IEntityAdapter)