Although it is strongly recommended that you avoid the use of
invalid dates within your .NET application, it is possible to
use invalid dates by means of the
MySqlDateTime data type.
MySqlDateTime data type supports the same
date values that are supported by the MySQL server. The default
behavior of Connector/Net is to return a .NET DateTime object
for valid date values, and return an error for invalid dates.
This default can be modified to cause Connector/Net to return
MySqlDateTime objects for invalid dates.
To instruct Connector/Net to return a
MySqlDateTime object for invalid dates, add
the following line to your connection string:
Allow Zero Datetime=True
MySqlDateTime class can still be
problematic. The following are some known issues:
Data binding for invalid dates can still cause errors (zero dates like 0000-00-00 do not seem to have this problem).
ToString method return a date
formatted in the standard MySQL format (for example,
2005-02-23 08:50:25). This differs from
ToString behavior of the .NET
MySqlDateTime class supports NULL
dates, while the .NET DateTime class does not. This can
cause errors when trying to convert a MySQLDateTime to a
DateTime if you do not check for NULL first.
Because of the known issues, the best recommendation is still to use only valid dates in your application.