3
StructureMap에 사용을 등록해야하는 두 개의 Nhibernate SessionFactory가있는 시나리오가 있습니다. Foo 만 mySessionFactory 세션이 필요합니다. 이처럼StructureMap에서 명명 된 싱글 톤 인스턴스 (다중 nHibernate 세션 팩토리)
:
For<ISessionFactory>().Singleton().Use(NHibernateConfiguration.GetDefaultSessionFactory());
For<ISession>().HybridHttpOrThreadLocalScoped().Use(x => x.GetInstance<ISessionFactory>().OpenSession());
For<ISessionFactory>().Singleton().Use(AnotherNHibernateConfiguration.GetDefaultSessionFactory).Named("mySessionFactory");
For<ISession>().HybridHttpOrThreadLocalScoped().Use(x => x.GetInstance<ISessionFactory>("mySessionFactory").OpenSession()).Named("mySession");
For<Foo>()
.Use<Foo>()
.Ctor<ISession>("session").Is(x => x.TheInstanceNamed("mySession"));
문제는 mySessionFactory 지금 내 이름이 인스턴스를 사용해야 다른 곳 난 단지 푸에 사용되는 싶어 할 때 모든 곳에서 사용된다는 점이다.
내가 뭘 잘못하고있어?