0
我使用StructureMap进行依赖注入,我想用它注入NHibernate会话。我有以下代码:StructureMap嵌套依赖关系处理
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显得尴尬。这是一种可接受的做法吗?这是否会在道路上倒退?有没有更好的办法?你如何处理需要创建另一个依赖来创建自己的依赖关系?
这正是我所期待的。谢谢。我错过了为lambda表达式提供容器的重载。 – Chris 2010-09-19 17:39:23