"将datetime2数据类型转换为日期时间数据类型导致超出范围的值"

时间:2014-04-05 14:21:57

标签: .net entity-framework

我正在使用实体框架在数据库中创建新实体,并在下面分配用户输入的属性,其中EndDate可以为空:

entity.Name = this.Name.Text;
entity.StartDate = DateTime.Now;
entity.EndDate = DateTime.Now;
entity.Depo.Id = Int32.Parse(this.Depo.SelectedValue);

当我在此时保存更改时,实体将保存在数据库中。但是当我添加任何导航属性时,它会创建以下异常。

entity.Offices.Add(new HeadOffice { Office = myoffice });
  

“更新条目时发生错误。有关详细信息,请参阅内部异常。”

     

堆栈追踪:

     

at System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager,IEntityAdapter adapter)      在System.Data.EntityClient.EntityAdapter.Update(IEntityStateManager entityCache)      在System.Data.Objects.ObjectContext.SaveChanges(SaveOptions选项)

INNER例外:

  

“将datetime2数据类型转换为日期时间数据类型会导致超出范围的值。   声明已经终止。“

     

at System.Data.SqlClient.SqlConnection.OnError(SqlException异常,Boolean breakConnection,Action 1 wrapCloseInAction) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action 1 wrapCloseInAction)      在System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj,Boolean callerHasConnectionLock,Boolean asyncClose)      在System.Data.SqlClient.TdsParser.Tryxxx(xxxBehavior runBehavior,SqlCommand cmdHandler,SqlDataReader dataStream,BulkCopySimpleResultSet bulkCopyHandler,TdsParserStateObject stateObj,Boolean& dataReady)      在System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()      在System.Data.SqlClient.SqlDataReader.get_MetaData()      在System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds,xxxBehavior runBehavior,String resetOptionsString)      在System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior,xxxBehavior runBehavior,Boolean returnStream,Boolean async,Int32 timeout,Task& task,Boolean asyncWrite)      在System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior,xxxBehavior runBehavior,Boolean returnStream,String method,TaskCompletionSource 1 completion, Int32 timeout, Task& task, Boolean asyncWrite) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, xxxBehavior runBehavior, Boolean returnStream, String method) at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.Common.DbCommand.ExecuteReader(CommandBehavior behavior) at System.Data.Mapping.Update.Internal.DynamicUpdateCommand.Execute(UpdateTranslator translator, EntityConnection connection, Dictionary 2 identifierValues,List`1 generatedValues)      在System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager,IEntityAdapter adapter)

0 个答案:

没有答案