2009-08-14 33 views
1

我使用巴勒莫和他的團隊... link提供的HybridSessionBuilder ..NHibernate的HybridSessionBuilder,基於URL如何切換休眠CFG值

我們我們的試運行環境設置,使該網址將成爲一個下面根據環境

  • web-test.company.com
  • web-cert.company.com
  • web.company.com

我們通常所做的是看看url,如果它有「-test」,我們使用測試配置等等(連接字符串等)。

這是第一個在這種類型的環境中使用nhibernate的項目。什麼是告訴會話生成器使用正確的hibernate cfg的好方法(我將爲每個環境構建1)。

HybridSessionBuilder位於基礎結構層中,並通過StructureMap注入到存儲庫中。

回答

2

這是我使用HybridSessionBuilder如何選擇一個配置文件:

public Configuration GetConfiguration() 
{ 
    var configuration = new Configuration(); 
    string cfgFile = Path.GetDirectoryName(Assembly.GetAssembly(this.GetType()).CodeBase) + 
      "\\com.Data.nHibernate.cfg.xml"; 
    configuration.Configure(cfgFile); 
    configuration.AddAssembly("com.Data"); 
    return configuration; 
} 

如果您想根據我只想找出導致此函數調用堆棧,要麼通過在URL中選擇配置文件枚舉值或配置文件的名稱直接。