2008-10-28 64 views
1

我有一个情况,我有两个实体共享主键(Transaction和TransactionDetail)。我有他们使用从事务到TransactionDetail和从TransactionDetail到事务的多对一关系映射。交易细节为每笔交易记录一笔记录。但是,当我创建一个新的事务细节对象并将其添加到事务中时,NHibernate尝试用一个查询来更新事务表,如'update transaction set id =?其中id =?'每个参数的值相同。NHibernate多对一映射更新不变的表

由于映射位于主键列上,我不希望事务更新。实际上,由于主键是标识列,因此在尝试更新值时会出现错误。如何在创建新的TransactionDetail记录时防止NHibernate更新Transaction表?

回答

2

您可能想要查看one-to-onejoin-table映射类型。 many-to-one意味着某些特定的东西,而且看起来您的情况可能更适合其他两种映射类型之一的配置文件。

+0

谢谢法官, 我尝试了一个一对一映射,并且没有为我工作,但连接表映射看起来像它可能只是门票。 – SteveBering 2008-10-28 23:14:17