是否可以从2个表创建映射并让它们共享链接表?我不确定这是否可行,但可能有更好的方法来做到这一点,并希望得到一些建议。这是我对映射的想法:
//For Attachments
HasOptional(a => a.Subscription).WithMany().Map(m => {m.MapLeftKey("SubscriptionID"); m.MapRightKey("EntityId"); m.ToTable("Subscriptions);});
//For Submittals
HasOptional(s => s.Subscription).WithMany().Map(m => {m.MapLeftKey("SubscriptionID"); m.MapRightKey("EntityId"); m.ToTable("Subscriptions);});
这会为两个实体共享创建一个链接表吗?这是一个好方法,还是我应该为订阅表中的每个实体都有一个FK?
更新:我不认为这些映射会起作用,因为它是多对一的吗?这可能更合适:
HasOptional(s => s.Subscription).WithMany().Map(m => {m.MapKey("EntityId"); m.ToTable("Subscriptions");});
答案 0 :(得分:0)
再考虑一下,这不是它的工作原理。我最终只为Subscriptions类中的所有类型提供了FK。就像我需要的那样工作。