无法在VS2010中将MySQL日期/时间值转换为System.DateTime

nie*_*lsv 7 c# mysql asp.net asp.net-mvc

当我想从我的mysql数据库加载数据时,我总是收到此错误:

无法将MySQL日期/时间值转换为System.DateTime

这是我的连接字符串:

<add name="gdmwebsiteEntities" 
     connectionString="metadata=res://*/Models.DBModel.csdl|res://*/Models.DBModel.ssdl|res://*/Models.DBModel.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=localhost;User Id=root;database=gdmwebsite&quot;" 
     providerName="System.Data.EntityClient" />
Run Code Online (Sandbox Code Playgroud)

我已添加"Convert Zero Datetime = True"添加我的connectionstring的结尾,但没有任何改变.

    <add name="gdmwebsiteEntities" 
     connectionString="metadata=res://*/Models.DBModel.csdl|res://*/Models.DBModel.ssdl|res://*/Models.DBModel.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=localhost;User Id=root;database=gdmwebsite&quot;
     Convert Zero Datetime=True
      Allow Zero Datetime=True"
     providerName="System.Data.EntityClient" />
Run Code Online (Sandbox Code Playgroud)

还有另一种解决方法吗?

Son*_*nül 21

在连接字符串中设置这两个配置.

"Convert Zero Datetime=True"
"Allow Zero Datetime=True"
Run Code Online (Sandbox Code Playgroud)

http://bugs.mysql.com/bug.php?id=26054

请检查连接选项下的手动并将"允许零日期时间"设置为true,如附加图片所示,错误将消失.

另请查看:http://mdid.org/mdidwiki/index.php?title = Noneable_to_convert_MySQL_date/time_value_to_System.DateTime_exception

要解决此问题,请使用NULL或有效时间戳替换所有无效时间戳,或者添加Allow Zero Datetime = true