我正在向我的WCF服务(托管在IIS中)中添加Ninject。我打算让WCF服务自动实例化我的NHibernate存储库类的实例。
我最初在我的ASP.NET MVC客户端中使用城堡(以及后来的Ninject)实例化这些对象,并将它们传递给一个服务类。在本例中,作用域是PerWebRequest (城堡)或InRequestScope (尼尼微)。NHibernate会话将与在释放存储库时提交的事务一起隐式创建。
我希望保持同样的方法,让客户机通过newing/关闭服务隐式地控制会话/事务的生存期。
现有的Ninject作用域方法中的一个会以这种方式工作(可能是InThreadScope或InRequestScope )?还有其他方法来实现这一目标吗?
发布于 2010-12-23 16:10:44
我会让客户机显式地控制这类对象的生存期。不要注入这样的对象,而是注入一个可以为您创建这样一个对象的工厂。这是在最小惊奇原则之后。有关详细信息,请参阅这就是答案。
https://stackoverflow.com/questions/4520315
复制相似问题