您如何在流利的 nhibernate 中映射和使用连接表?
Posted
技术标签:
【中文标题】您如何在流利的 nhibernate 中映射和使用连接表?【英文标题】:How can you map and work with a junction table in fluent nhibernate? 【发布时间】:2012-01-20 10:40:43 【问题描述】:我有两个表和一个联结表的经典场景。 比方说,位置、价格和 LocationXPrices。
LocationXPrices 仅包含位置和价格的 id,以便我们知道它们之间的关系。
我们得出的最佳方法是这样的: - 将多对多的位置映射到价格 - 将多对多的价格映射到位置 - 没有针对 LocationsXPrices 的特定映射和 .NET 对象。
将在读取位置时创建交汇点。 插入将与位置一起完成。
这是处理这种情况的最佳做法吗? 谁能提供更好的解决方案? 这对我来说并不那么自然。
谢谢你, 摩苏。
【问题讨论】:
【参考方案1】:是的,这是您的联结表表示像这样的纯弱实体的最佳实践,没有其他信息。联结表只是在 RDBMS 中对这种情况进行建模的必要工件; NHibernate 允许您完全隐藏它,因此您可以使用真正的多对多关系而不是 RDBMS 强制执行的多对多关系。
【讨论】:
好的,谢谢您的回答。你知道如何让它工作吗?它在两个表中都插入,除了 Junction 一个。一定是映射问题,但不清楚是什么。以上是关于您如何在流利的 nhibernate 中映射和使用连接表?的主要内容,如果未能解决你的问题,请参考以下文章
使用 2 种策略通过 fluent nhibernate 映射类层次结构