当MySql中的datetime字段等于“0000-00-00 00:00:00”时,NHibernate无法将其转换为.net日期时间。
错误消息:
"Unable to convert MySQL date/time value to System.DateTime"
如何配置Fluent NHibernate将值转换为null或datetime.min?
编辑:
我试过这个: NHibernate Unable to convert MySQL date/time value to System.DateTime 但它不起作用。 这是我的配置:
string connectionString = "Server=SERVER;Port=3306;Database=DB;Uid=USER;Pwd=PASSWORD; Allow Zero Datetime=true;";
return Fluently.Configure()
.Database(MySQLConfiguration
.Standard
.ConnectionString(connectionString)
)
.Mappings(m =>
m.FluentMappings
.AddFromAssemblyOf<MyMapping>()
)
.BuildSessionFactory()
;
答案 0 :(得分:2)
我提到的帖子有关于转换零日期时间的建议,我在你的配置上没有看到它。
你有没有这样试过:
string connectionString = "Server=SERVER;Port=3306;Database=DB;Uid=USER;Pwd=PASSWORD; Allow Zero Datetime=true;Convert Zero Datetime=true";
return Fluently.Configure()
.Database(MySQLConfiguration
.Standard
.ConnectionString(connectionString)
)
.Mappings(m =>
m.FluentMappings
.AddFromAssemblyOf<MyMapping>()
)
.BuildSessionFactory()
;