(当我说一个记录“有”另一个记录,我的意思是其他记录有一个引用第一个)。派生类中的对象引用基类在数据库中,而不是派生类
我有以下的数据库关系:
表
BaseAnswer - > MultipleChoiceAnswer - > MultipleChoiceAnswerCulture
一个BaseAnswer记录可以有一个MultipleChoiceAnswer记录。对于每一个 “MultipleChoiceAnswer” 有几个 “文化” 记载:
记录
英文片名
法文标题
一个MultipleChoiceAnswer记录有指一列BaseAnswer的主键,以及同样在MultipleChoiceAnswerCulture中的记录有一列应该重新转到MultipleChoiceAnswer的主键。但是,我的问题是插入到MultipleChoiceAnswerCulture中的记录是指BaseAnswer的主键代替(根父代,而不是直接父代)。这里是我的代码:
public class MultipleChoiceAnswerMap : SubclassMap<MultipleChoiceAnswer>
{
public MultipleChoiceAnswerMap()
{
Table("MultipleChoiceAnswer");
KeyColumn("BaseAnswerID");
Map(x => x.Score);
HasMany(x => x.Resources)
.CollectionType<ResourceMapSetUserType<MultipleChoiceAnswerCulture>>()
.KeyColumn("MultipleChoiceAnswerID")
.Cascade.AllDeleteOrphan()
.Access.CamelCaseField(Prefix.Underscore)
}
}
我们已经在我们的项目之一另一个例子是类似这样的,即使我工作过的那个,这仍保持插入BaseAnswer的主键作为参考,而不是MultipleChoiceAnswerCulture表中的MultipleChoiceAnswer的主键。
任何帮助,将不胜感激。