7

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" />

既に「Convert Zero Datetime = True」を追加して、接続文字列の末尾を追加しましたが、何も変更されていません。

    <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" />

これを修正する別の方法はありますか?

4

1 に答える 1

22

これらの両方の構成を接続文字列に設定します。

"Convert Zero Datetime=True"
"Allow Zero Datetime=True"

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

接続オプションのマニュアルを確認し、添付の写真のように「Allow Zero Datetime」を true に設定すると、エラーは解消されます。

これも確認してください: http://mdid.org/mdidwiki/index.php?title=Unable_to_convert_MySQL_date/time_value_to_System.DateTime_exception

この問題を解決するには、すべての無効なタイムスタンプを NULL または有効なタイムスタンプに置き換えるか、Allow Zero Datetime=true を追加します。

于 2013-06-08T18:32:53.280 に答える