2010-11-23 69 views
0

在我們的NHibernate設置中,我們有一個Listing實體。由於數據庫性能的原因,我們希望按國家(按照該網站的設置方式,沒有人可以一次在多個國家/地區搜索)將其存儲分割爲多個表格。所以,Listing_US,Listing_FR等跨多個表拆分NHibernate實體行存儲

兩個問題,比第二,第一要重要得多:

  1. 有什麼辦法可以NHibernate的爲我做這個映射?據推測,它將圍繞在Get()(我將通過國家代碼,或者可能將其集成到主鍵?)上生成的內部字段爲基礎,然後在Save()上讀取。

  2. 它是否也包含在模式中,並且在從頭開始創建整個數據庫模式時可以導出?

編輯:我剛剛意識到,這將試圖做選擇發揮破壞。顯然,由於我不想每次查詢每個表(會損害性能優勢),我將不得不擁有某種Listing_XX實體,但它可能會繼承一個通用的Listing?不過,我不確定這將如何融入XML映射。

回答

0

您可以嘗試NHibernate的碎片(在http://sourceforge.net/projects/nhcontrib/源)

+0

謝謝,我看了看,但它似乎不是很成熟?無論如何,我設法通過使用流利NHibernate和繼承來解決我的問題:http://stackoverflow.com/questions/4259403/fluent-nhibernate-classmap-inheritance/4259628#4259628 – Alastair 2010-11-23 18:52:02

0

它可能會更好,如果你的數據庫支持他們使用分區表(你沒有說DB你使用)。只要您始終使用分區列值進行查詢,您就可以毫無麻煩地獲得多個表的所有性能優勢。