Nhibernate 如何验证StructureMap是否正确处理对象

Nhibernate 如何验证StructureMap是否正确处理对象,nhibernate,structuremap,Nhibernate,Structuremap,我目前正在使用StructureMap使用以下代码注入NHibernate ISessions的实例: ObjectFactory.Initialize(x => { x.ForRequestedType<ISession>() .CacheBy(InstanceScope.PerRequest) .TheDefault.Is.ConstructedBy(y => NHibernateSessionManager.Instance.

我目前正在使用StructureMap使用以下代码注入NHibernate ISessions的实例:

ObjectFactory.Initialize(x =>
{
    x.ForRequestedType<ISession>()
        .CacheBy(InstanceScope.PerRequest)
        .TheDefault.Is.ConstructedBy(y => NHibernateSessionManager.Instance.GetSession());    
});
ObjectFactory.Initialize(x=>
{
x、 ForRequestedType()
.CacheBy(InstanceScope.PerRequest)
.TheDefault.Is.ConstructedBy(y=>NHibernateSessionManager.Instance.GetSession());
});
我假设CacheBy(InstanceScope.PerRequest)会正确地处理它创建的ISession,但我想确定一下。最简单的测试方法是什么?

好的,那么根据:

还请注意,StructureMap提供 没有清理功能 公司持有的对象的资源 容器 (Container.EjectAllInstances()将 清除单例对象)。到 日期,我还没有找到这个需要 行为或功能。我 通常假设 基本垃圾收集和适当的 课堂设计已经足够了


我知道在使用NHibernate时调用ISession.Dispose()是最好的做法,所以我需要自己手动清理它,或者仅仅依靠垃圾收集来为我清理它。

是的,您需要手动清理它(不依赖GC)。退房