StructureMap、NHibernate、および複数のデータベースを設計のソースとして使用して、タイプの複数のインスタンスを構造マップに追加しようとしています
レジストリにそれらを追加する方法は次のとおりです。
foreach (ConnectionStringSettings location in ConfigurationManager.ConnectionStrings)
{
For<INHibernateSessionFactory>()
.Add(x => new NHibernateSessionFactory(location.Name, GetSessionFactory(location.ConnectionString)));
}
そして、私の AppSessionFactory で:
public AppSessionFactory(IEnumerable<NHibernateSessionFactory> factories)
{
_factories = new List<INHibernateSessionFactory>(factories);
}
それもこれも機能しません:
_factories = ObjectFactory.GetAllInstances<INHibernateSessionFactory>().ToList();
どちらの呼び出しも、同じオブジェクト、同じ場所、同じ SessionFactory を 2 つ返します。