【问题标题】:Fluent mapping help流利的映射帮助
【发布时间】:2010-06-18 14:12:05
【问题描述】:

这可能是一个非常简单的问题,但我是 nHibernate 的新手,我无法解决这个问题。

我有一个 Page 对象,它可以有许多 Region 对象。我也有一个 Workflow 对象。 Page 和 Region 对象都与 Workflow 有关系,而我遇到的正是这种双重关联。

PageMap 有

HasMany(Function(x) x.Regions).Cascade.All()

而且 RegionMap 有:

 References(Function(x) x.Page)

这一切似乎都奏效了。

但是如何定义Workflow和这两个对象的关系呢?

【问题讨论】:

  • 考虑发布您的数据模型图,以减少人们为您提供帮助的工作量。

标签: .net nhibernate fluent


【解决方案1】:

它在您的数据库中的情况如何?如果两者都有工作流的外键,那么两者都得到一个映射为 Workflow 的属性:

References(Function(x) x.Workflow)

在每个映射类中。如果只有Page 拥有它,并且因此推断出Region,则在Region 上添加一个未映射的只读属性:

public Workflow Workflow { get { return Page.Workflow; } }

【讨论】:

  • 嗨。两者都有一个外键。但是我如何映射反向关系呢?我以为您必须在 References() 的关系的另一端使用 HasMany()?我也对在哪里最好使用 Inverse 和 Cascade 感到有些困惑......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多