2011-11-03 46 views
0

映射1:n關係自動創建FK列,在下面的示例中,Book表中的列Author_id。但是,如何將此值作爲Book實體的屬性提供?如果我創建一個屬性int AuthorID,是否有可能使NHibernate使用這個屬性作爲外鍵,所以我可以以編程方式訪問它?Fluent-NHibernate,指定單向關係中的FK屬性

public class Author 
{ 
    public IList<Book> Books { get; set; } 
} 

//AuthorMap: 
HasMany(x => x.Books); 

回答

0

正如我從這個問題的理解,你需要一個雙關係的關係。 只需添加屬性作者在書類

public virtual Author Author {get; set;} 

,並將其映射在書Mappping參考文件

Reference(x => x.Author); 

你可以爲這兩種映射指定相同的FK列名,以確保您鏈接相同表列。

如果您真的需要在書中使用int AuthorID,那麼將創建此屬性並將其設置爲Not.Update和Not.Insert,只需將其設置爲只讀。

+0

不,我不想雙向。只是想知道如何/如何作爲一個屬性訪問一個單向關係的FK。 – bretddog