(當我說一個記錄「有」另一個記錄,我的意思是其他記錄有一個引用第一個)。派生類中的對象引用基類在數據庫中,而不是派生類
我有以下的數據庫關係:
表
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的主鍵。
任何幫助,將不勝感激。