使用.Net和NHibernate,我从MySql-数据库表中绘制数据。这包含一列数据类型为MySQL-Timestamp的默认零值(0000-00-00 00:00:00)。如何接收零MySQL时间戳值
我将该列映射到我的类的DateTime成员。当创建一个标准时,NHibernate会抱怨错误的格式。我想将零值转换为有效值。这可能吗?
更新: 我试图在我想要映射的类中实现IUserType接口。但是,这似乎还没有帮助很多。它看起来像这样:
public virtual object NullSafeGet(System.Data.IDataReader rs, string[] names, object owner)
{
if (rs.IsDBNull(rs.GetOrdinal(names[6])) || rs.GetDateTime(6) < DateTime.MinValue) return DateTime.MinValue;
else
return rs.GetDateTime(6);
}
我不知道这是否正确。 (导致问题的日期时间值是类的 6财产。)
我的程序违反这段代码:
ISession session = GetCurrentSession();
return session.CreateCriteria<ClassToMap>().List<ClassToMap>();
不,我使用NHibernate,它为我做的SQL。 – AGuyCalledGerald 2010-12-13 13:04:11