我有一个具有Id(PK)的表和另一个包含大量信息的表。从第一个表到第二个表中的某些数据将存在一对多关系,但在任何地方都没有FK。所以我想在table1.Id上使用table2.OtherId。
进行内连接我的模型设置了IList,在我的table1地图中我有:
HasMany(x => x.Properties).KeyColumn("table2id");
但我想因为它不知道在第一个表中加入该列的内容,所以它不起作用。我知道table2模型工作正常,因为我已经自己尝试了,我得到了所有正确的数据。正是这个HasMany的东西搞砸了。
我在这里查看了其他“相关”问题,但我看不出任何对我有用的东西。
答案 0 :(得分:0)
您不必具有FK关系,但KeyColumn中指定的列必须是table2的主键。我不知道解决方法。
答案 1 :(得分:0)
事实证明,我需要在Table2中将References
映射到Table1。然后只需在Table1 Mapping中对HasMany(x => x.Properties).Inverse.Cascade.None()
进行排序。