1

当 MySql 中的日期时间字段等于“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()
         ;
4

1 回答 1

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()
         ;
于 2012-04-21T15:33:01.373 回答