【发布时间】:2010-09-19 16:26:17
【问题描述】:
我正在使用 StructureMap 进行依赖注入,我想用它注入 NHibernate 会话。我有以下代码:
private static Container _container { get; set; }
static MyClass()
{
_container = new Container(r =>
{
r.For<ISessionFactory>().Singleton()
.Use(NHibernate.GetSessionFactory());
r.For<ISession>().HybridHttpOrThreadLocalScoped()
.Use(_container.GetInstance<ISessionFactory>().OpenSession());
});
}
但是,我不禁认为从 _container 的初始化中引用 _container 似乎很尴尬。这是可接受的做法吗?它会在路上适得其反吗?有没有更好的办法?您如何处理需要创建另一个依赖项才能创建自己的依赖项?
【问题讨论】:
标签: dependency-injection structuremap