0

我的主要实体(帐户)图如下所示:

帐户

  • 经理
  • 销售员
  • 商人

Manager、SalesPerson 和 Trader 实体是 person 类型。现在,在创建主要实体(以及内部实体)时,如果它不存在,我需要创建一个新的 Person。这引入了一个问题,如果同一个(新)人应该与销售人员和交易员相关联,我希望创建的同一个临时实体与两者相关联。但相反,我最终创建了 Person 对象的重复瞬态实例,这在系统中创建了重复项。我怎样才能避免这种情况?

4

1 回答 1

0

您可以在创建 Person 对象后立即将其保存到数据库吗?然后它将在数据库中,当您检查它时,它就在那里。如果您使用本机主键,nHibernate 将在您调用 Save 时将其保存到数据库中。如果您不使用本机主键,则必须调用flush。

或者,跟踪最近保存的 Person 的,并首先检查那里。

于 2010-10-28T01:46:25.517 回答