代码之家  ›  专栏  ›  技术社区  ›  hhravn

对象上的nhibernate usertype值

  •  0
  • hhravn  · 技术社区  · 16 年前

    我使用一个usertype来维护数据库中的一个列(已创建)。

    保存到数据库时,我只需检查所讨论的属性是否等于datetime.minvalue,如果是,则将其更新为datetime.now(重写nullsafeset)。但是,nhibernate不会立即反映此更新,如果在不逐出对象的情况下再次加载该对象,则created的值仍然是datetime.minvalue。

    除了使用session.evict()之外,是否还有其他方法来获取nhibernate返回的值以返回更新的值?

    1 回复  |  直到 16 年前
        1
  •  1
  •   Community Mohan Dere    9 年前

    您可以(也可能应该)通过连接到预插入和预更新事件来完成此任务 而不是使用 IUserType . 退房 this question 更多信息。

    要对实体执行所需的操作,可以 evt.Entity 到支持您的字段的接口( IHasLastModified 在示例中),并设置该值。