Используя .Net и NHibernate, я рисую данные из таблицы MySql-Database.Он содержит столбец типа данных MySQL-Timestamp с нулевым значением по умолчанию (0000-00-00 00:00:00).
Я сопоставляю столбец с членом 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);
}
Понятия не имею, правильно ли это.(Значение DateTime, вызывающее проблемы, является шестым свойством класса.)
Моя программа прерывается по следующему коду:
ISession session = GetCurrentSession();
return session.CreateCriteria<ClassToMap>().List<ClassToMap>();