1

据我了解,NHibernate 内置了对时间戳的支持。但是,您似乎只能指示 NHibernate 永远不要更新该属性或始终更新它。

在我目前正在处理的项目中,有几个表同时具有“ created_time”和“ updated_time”,它们都将由数据库生成。

我不知道如何指示 NHibernate仅在插入“ ”以及插入和更新“ ”时将“ getdate()”用于两个属性螺母。created_timeupdated_time

这可能吗?

PS:我正在使用旧数据库,并且不允许更改它,因此触发器等不是可能的解决方案。

4

2 回答 2

1

您可以通过创建一个设置这些值的拦截器来解决此问题,但是当然,这些值不是由 DBMS 生成的...

这可能是一种解决方法,因为我也不知道如何确保数据库填充这些值,但我也对此问题的另一种解决方案感兴趣。:)

于 2009-03-17T11:34:58.973 回答
1

您使用的是哪个版本的 NHibernate?

在 2.0 中,属性上的“生成”标记具有三个有效值:

  • 从不(不言自明)
  • 插入(将仅在插入时检索生成的值)
  • 总是(总是检索生成的值)。
于 2009-03-17T16:49:28.873 回答