2009-05-25 29 views
0

我讀到的配置的初始加載時間在nHibernate中可能相當長,具體取決於映射表的編號等。什麼時候加載了nHibernate的配置?

這是否完成一次並存儲在會話或緩存中?
每當ASP.NET進程回收時它會發生嗎?

回答

2

配置對象通常與ISessionFactory關聯。如果你有很多映射的建立(通過調用cfg.BuildSessionFactory)會話工廠可能會很慢。這就是爲什麼你只需要構建會話工廠一次並在整個應用程序中使用它。在進程回收的ASP.NET應用程序中,您將失去對此會話工廠的引用,並且需要重新進行重構。

如果你發現這是非常慢來構建你的會話工廠,你可以通過禁用反射優化提高性能:Environment.UseReflectionOptimizer = FALSE(CF doc

0

Configuration用於構建ISessionFactory。這是一筆一筆交易 - 這將在應用程序啓動時發生。

相關問題