Nhibernate - 使用smalldatetime字段保存

时间:2014-03-26 18:24:12

标签: c# sql sql-server nhibernate

我有一个带有日期时间字段的实体类:

public virtual DateTime Date { get; set; }

使用这种映射(NH 3.2代码映射):

Property(l => l.Date, m =>
{
     m.Column("like_date");
     m.NotNullable(true);
     m.Type(NHibernateUtil.DateTime);
});

MS SQL 2005服务器中的列是SmallDatetime类型(不可为空)。

问题是,当我尝试保存此对象时,我得到:

System.Data.SqlTypes.SqlTypeException:SqlDateTime溢出。必须在1/1/1753 12:00:00 AM和12/31/9999 11:59:59 PM之间

日期正确设置为Datetime.Now。

1 个答案:

答案 0 :(得分:0)

我发现问题是(在其他类似问题中提到的)不是类中的可以为空的DateTime 属性,它在数据库中是可空的。重要的是,它不是关于我保存的类,而是其他的,在这个过程中从db获取的类。

如果您遇到此类问题,也会检查其他类