我有兩個表,有多對一的關係,當從數據庫讀取所有數據時,我遇到性能問題。性能多對一關係
ClassA的是ClassB的父
配置ClassA的
<id name="Id">
<generator class="native" />
</id>
<property name="FieldA1" column="FieldA1" />
<many-to-one name="ClassB" column="ClassBId" />
配置ClassB的
<id name="Id">
<generator class="native" />
</id>
<property name="FieldB1" column="FieldB1"/>
我想ClassA的對象的列表,其中ClassA的對象包含CLASSB對象一次。
當請求來自ClassA的所有數據時,它工作得很好,但其速度非常緩慢,因爲對於ClassA的每個條目,執行sql語句(從ClassB選擇*,其中Id = ClassA.ID)以獲得類B.因爲我需要ClassB的數據,所以將lazy標誌設置爲true並不是解決方案。
任何人的想法如何獲得NHibernate,使所有的數據可以閱讀更好的性能?
謝謝!
謝謝,使用FetchMode.Join它效果更好。 – 2011-02-03 09:12:12