2009-11-10 74 views
1

我們在我們的Web應用程序中使用兩個數據庫。一個位於美國,另一個位於加拿大。你應該只看到基於你的國家的數據。現在我認爲在創建SessionFactory對象時會出現問題,因爲這些實體已經爲美國創建。現在,當NHibernate的嘗試創建工廠的CAN數據庫,用相同的實體,然後我得到了以下錯誤:具有相同實體的不同數據庫服務器的nhibernate會話

Could not find connection string setting (set connection.connection_string or connection.connection_string_name property)

我怎樣才能解決這個問題?

更新: 這裏是堆棧跟蹤:

在NHibernate.Connection.ConnectionProvider.Configure(IDictionary的2 settings) at NHibernate.Connection.ConnectionProviderFactory.NewConnectionProvider(IDictionary 2設置) 在NHibernate.Cfg.SettingsFactory.BuildSettings(IDictionary`2屬性) 在NHibernate.Cfg.Configuration.BuildSettings() at NHibernate.Cfg.Configuration.BuildSessionFactory() at FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory()in d:\ Builds \ FluentNH \ src \ FluentNHibernate \ Cfg \ FluentConfiguration.cs:line 93

回答

0

只是一個想法在這裏,但考慮到你的DAL被連接到兩個不同的數據源上兩套不同的基礎設施,你不應該旋轉起來了CAN NHibernate的會議的一個實例,併爲美國NHibernate的會議的一個實例。 ..然後在查詢後合併結果?使用一個會話來查詢兩個絕望的數據源聽起來並不像正確的方法......即使它在物理上是可能的。在這裏我應該考慮分離關注點。

介紹 - >服務層| - > projectName.dataAccess.usa.EntityRepository | - > projectName.dataAccess.can.EntityRepository

相關問題