Nel caso abbiate un database MySQL che ha i campi dati non valorizzati che invece di avere il valore null hanno “0000-00-00” utilizzandoli un un’applicazione realizzata con Instant Developer Foundation incorrete nell’errore di runtime:
Unable to convert MySQL date/time value to System.DateTime
La cosa migliore da fare sarebbe quella di bonificare il database impostando null per i campi con quel valore ma non sempre è possibile, magari occorre lasciarli a quel valore per compatibilità con un altro software e quindi come fare?
È semplice: andiamo a cambiare la stringa di connessione al database a runtime nell’evento Initialize della nostra applicazione web in questo modo:
"SERVER=il-serve-del-database;DATABASE=il-mio-database;Convert Zero Datetime=true;"
In sostanza è il parametro Convert Zero Datetime=true che ci interessa.
Questa impostazione risolve il problema.