Unable to convert MySQL date/time value to System.DateTime
相信这个问题很多人都会看到的。在mySql数据库中这类日期都是“0000-0-0”。设置allow zero datetime=true,这类日期在connector-net-5.1.4返回一个MySqlDateTime类型,值自然是0000-0-0,Nullables.NHibernate得到这个值时尝试转换为日期
在NHibernate中应用Mysql正为空日期的问题困扰public override object Get(IDataReader rs, int index)
}
这时会抛出上面的错误。

如果在连接字符串中不设置“allow zero datetime=true”,那在判断是否是DBNull时就抛出上面的错误
在NHibernate中应用Mysql正为空日期的问题困扰int index = rs.GetOrdinal(name);
在NHibernate中应用Mysql正为空日期的问题困扰
在NHibernate中应用Mysql正为空日期的问题困扰            
if (rs.IsDBNull(index))
}

以为下载了connector-net的源代码就能找到解决的方法,没想到工程有一个项目打不开,编译的DLL又无法加到GAC去,只好又回头去改Nullables.NHibernate.NullableDateTimeType
在NHibernate中应用Mysql正为空日期的问题困扰public override object Get(IDataReader rs, int index)

相关文章: