我ArticleBase
继承了ArticleComputer
和ArticleCar
。我正在使用带有鉴别器值的nhibernate继承映射。一切都已启动并运行但我有困境,因为ArticleBase具有属性Tags
我是否应该在ArticleBaseMap
类中映射此属性,或者我应该留给子类来映射这些公共属性。
我想它应该映射到抽象基类中,但我想听听有经验的用户。
由于
答案 0 :(得分:0)
这里的答案很简单:
ArticleBase
表 (Discriminator列所在的位置)上可用 将其映射到 。 那么,列那里...... 应该是映射
这并不意味着:声明(base,interface)的地方。原因可能是,在C#中我们在基础实现中做了一些常见的事情,而有些孩子(出于任何原因)不能将其作为映射的一部分(它只是虚拟的)
即:我们应该映射它存在列的位置。没有其他的。然后,如果我们要重复将它映射到所有孩子的所有(因为在那里声明了列):
..改变DB的设计。将其从子项移回父表。