2010-11-23 54 views
2

In an earlier question(與Fluent NHibernate無關 - 我已經因爲我的問題而改變了)我列出了一個表格佈局問題我在哪裏需要將我的列表實體分配到多個表中,具體取決於他們所在的國家/地區從。這是出於性能方面的原因 - 我希望有效地使用Listing_UK,Listing_FR等表格。流利NHibernate的ClassMap繼承?

現在,我認爲我會用Fluent贏得大獎,而且我已經90%了 - 但我已經陷入困境。我有一個Listing類和一個繼承自它的Listing_UK類。因此,像這樣的東西:

Listing testListing = new Listing_UK() as Listing 

工作正常。但是,我絆倒了ClassMaps。我本來打算做一個靜態無效即會盡我映射所有的表像這樣:

public static void DoMap(ClassMap<Listing> map) { 
     map.Id(x => x.ListingCode) 
      .GeneratedBy.HiLo("10000"); 
    } 

,但我需要的類映射<Listing_UK>轉換爲類映射<上市>爲了通過它 - 我不能。像這樣的東西(雖然它沒有道理,因此)不起作用:

ClassMap<Listing> test = new ClassMap<Listing_UK> as ClassMap<Listing> 

任何想法,我可以優雅地處理這個?

回答