NHibernate查询,带有按时间戳筛选字段
本文关键字:时间戳 筛选 字段 查询 NHibernate | 更新日期: 2023-09-27 18:00:58
我有一个带有Timestmap类型的版本控制字段的表。现在我正试图通过这个字段进行查询,但当我以下一种方式传递参数时:
query.SetParameter("TimeStamp", lastTick, NHibernateUtil.Timestamp);
它将其作为DateTime传递给sql查询。也尝试了NHibernateUtil.Binary,但nhibernate将其作为varbinary传递。
NHibernate TimestampType指定:
这与DateTime几乎完全相同,只是可以使用并将其存储到数据库支持的精度,并且将默认为DateTime的值。现在,如果该值为null。
此类型根本不适用于MS SQL类型TIMESTAMP。事实上,该列类型已被弃用:
时间戳语法已弃用。此功能将在未来版本的Microsoft SQL Server中删除。避免在新的开发工作中使用此功能,并计划修改当前使用此功能的应用程序。
rowversion(Transact-SQL(
您应该使用NHibernateUtil.Binary
或NHibernateUtil.BinaryBlob
。